1

我在 Windows 上运行来自 Jenkins 的测试,当多个作业同时在不同的构建线程上运行时,当一次只执行一个时,测试工作正常。我正在使用 Watir 网络驱动程序。浏览器的创建是使用代码:

profile = Selenium::WebDriver::Chrome::Profile.new
browser = Watir::Browser.new :chrome, :profile => profile, :http_client=>client

测试是用 Ruby 和 Cucumber 编写的,我使用标签在每个作业中运行测试的子集。测试是使用“执行 Windows 批处理命令”中的黄瓜执行的。在我的桌面上打开两个命令行实例并并行运行作业可以正常工作。

几个不同的错误似乎再次出现。一种是:

[0412/111507:ERROR:ipc_sync_channel.cc(378)] Canceling pending sends
[0412/111552:ERROR:proxy_launcher.cc(114)] WaitForInitialLoads failed.
[0412/111552:ERROR:proxy_launcher.cc(556)] Failed to ConnectToRunningBrowser
[0412/111552:ERROR:automation_proxy.cc(319)] Channel error in AutomationProxy.
[0412/111552:ERROR:ipc_sync_channel.cc(378)] Canceling pending sends
[0412/111552:ERROR:ipc_sync_channel.cc(378)] Canceling pending sends
Unable to either launch or connect to Chrome. Please check that ChromeDriver is up-to-date. Using Chrome binary at: C:\Users\steve\AppData\Local\Google\Chrome\Application\chrome.exe (Selenium::WebDriver::Error::UnknownError)

另一个是

No connection could be made because the target machine actively refused it. - connect(2) (Errno::ECONNREFUSED)

通过我的桌面上的命令行而不是通过 Jenkins 运行的示例运行是:

cucumber --tags @event_discounts ENVIRONMENT=beta

cucumber --tags @WhiteList ENVIRONMENT=BETA

关于如何解决这个问题的任何建议?

4

1 回答 1

1

解决方案是打开服务,打开 Jenkins 的属性,单击“登录”选项卡并选中“允许服务与桌面交互”,然后我通过http://localhost:8080/safeRestart 单击“是”重新启动 Jenkins,现在测试将正确并行运行。

不幸的是,我现在收到有关交互式服务检测的弹出窗口,但我可以将其移动到屏幕的角落并忽略它。

于 2013-04-12T14:47:41.183 回答