【发布时间】:2017-04-21 20:13:39
【问题描述】:
通过运行绑定到 DISPLAY:10 的 xvfb,然后使用 DISPLAY=:10 webdriver-manager start 运行 Selenium,我让 Chrome 通过 Selenium 服务器无头工作。所以这一切都很好。
我还通过在 protractor.conf 中指定 directConnect: true 直接从量角器运行 Chromedriver。
我想做的是两者的结合,即。直接运行 chromedriver(没有 SELENIUM!),但以某种方式指示它在 DISPLAY 上无头运行:10。
在拓扑方面,一切都在开发者的 PC 上运行。不涉及服务器。在下面的评论中,我提到了一个节点服务器:它用于启动量角器,而不是更常见的从命令行启动。我希望量角器在 DISPLAY:0 上运行,这样我就可以看到它的输出、测试失败等。当它使用 chromedriver 生成 chrome 时,我希望 chrome 在 DISPLAY:10 上运行。我这样做的原因是我希望 chrome 窗口比我的物理屏幕大。背景见How can I screenshot the full height of a mobile form factor?。
【问题讨论】:
-
你好安德鲁。它不起作用,因为我不知道如何使它起作用。我找不到任何地方为启动的 chrome 实例配置目标 DISPLAY。
-
java 没有进入它。 protractor 是一个节点应用程序。节点应用程序的 DISPLAY 是 DISPLAY=:0 因为量角器正在我的 X 显示器上运行。当量角器生成 chromedriver 时,我希望 chromedriver 连接到 DISPLAY=:10
-
抱歉,已删除令人困惑的评论。显然卡在Java模式...
-
我在计算拓扑时遇到了麻烦。所以这一切都在一台服务器上? xvfb on :10、
DISPLAY=:10、Sel 服务器、chromedriver 和节点/量角器 - 远程调用服务器/量角器的测试。那正确吗?但是你也说“节点应用程序的显示是 DISPLAY=:0”,那么节点/量角器和另一个 chromedriver 也在一个单独的盒子上吗?如果这一切都在一个盒子上,DISPLAY=:10,那么肯定所有的 graf 都会通过 xvfb 而没有额外的配置。如果没有,那么您肯定只需要节点框上的 DISPLAY=otherBox:10 ,假设您不想要单独的 xvfb 那里。 -
如何启动无头 Chrome 实例?
标签: selenium selenium-webdriver protractor selenium-chromedriver