Cron工作运行Selenium 2测试套件

时间:2012-06-27 12:00:14

标签: java cron webdriver selenium-webdriver

我有一个ant脚本,它从SVN中检出我们所有的项目,然后构建项目,部署WAR文件并运行Selenium测试。不幸的是,当通过cron运行shell脚本时,它不会打开浏览器。

引发错误:

org.openqa.selenium.WebDriverException: Unable to either launch or connect to Chrome. Please check that ChromeDriver is up-to-date. Using Chrome binary at: /opt/google/chrome/google-chrome (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 6.88 seconds
Build info: version: '2.21.0', revision: '16552', time: '2012-04-11 19:09:00'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '2.6.37.6-0.9-desktop', java.version: '1.6.0_26'
Driver info: driver.version: ChromeDriver
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:175)
    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:128)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:459)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:140)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:95)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:133)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:110)
    at com.integration.SetUp.testLogin(SetUp.java:52)
</error>

我确实将export DISPLAY=:0添加到正在使用的shell脚本中。

export ANT_HOME=/home/user/CCBuild/apache-ant-1.8.2

export PATH=$PATH:$ANT_HOME/bin
export JAVA_HOME=/usr/java/jdk1.6.0_26
export PATH=$PATH:$JAVA_HOME/bin/java
export DISPLAY=:0
echo $ANT_HOME
cd CCBuild
ant -v -f build-all.xml

即使这样,它也会引发错误。截至目前,我无法使用Jenkins运行套件,我需要让这个cron工作正常工作。

1 个答案:

答案 0 :(得分:1)

我知道这已经老了...但我遇到了同样的问题。我通过在crontab中设置变量来解决这个问题...添加到cron的顶部DISPLAY =:0