我有以下jenkins设置 - centOS上的主节点,Windows Server 2008 R2上的从节点(作为Windows服务运行)。 二手selenium服务器:2.5.0 测试使用的是Selenium 1 API。
我正在启动hudson作业,试图在windows slave节点上运行简单的selenium测试。
启动字符串如下:ant run-tests -Dhost=localhost "-Dbrowser-type=*googlechrome"
作业失败并出现以下错误:
[testng] java.lang.RuntimeException: Could not start Selenium session: Failed to start new browser session: org.openqa.selenium.os.WindowsRegistryException: Problem while managing the registry, OS Version '6.1', regVersion1 = false
[testng] Build info: version: '2.5.0', revision: '13516', time: '2011-08-23 18:29:57'
[testng] System info: os.name: 'Windows Server 2008 R2', os.arch: 'amd64', os.version: '6.1', java.version: '1.6.0_26'
[testng] Driver info: driver.version: unknown
[testng] at com.thoughtworks.selenium.DefaultSelenium.start(DefaultSelenium.java:104)
[testng] at com.thoughtworks.selenium.DefaultSelenium.start(DefaultSelenium.java:109)
[testng] at com.frostdigital.framework.DefaultUITest.startSelenium(Unknown Source)
....
如果我通过RDP连接到该工作站并手动执行此命令,则一切正常。 在firefox上运行测试的工作也能正常工作。
任何可能导致此问题的建议?
答案 0 :(得分:2)
当我运行Jenkins是一个Windows服务时我遇到过这个问题,他们无法打开Windows(据我所知)所以浏览器永远不会打开。通过Web界面启动从属设备一次并尝试这种方式。我的赌注是浏览器至少会打开。
答案 1 :(得分:1)
仅供参考,我们在运行Windows服务的TeamCity构建代理时遇到了同样的问题 - 我们的解决方案是进入服务属性的“登录”选项卡,然后选中“允许服务与桌面交互”。 / p>
答案 2 :(得分:0)
对我来说,通过使用本地系统帐户以外的帐户登录Windows服务来解决问题。顺便说一句,我的设置是Windows 7上的Selenium 2.20。