我有一个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
工作正常工作。
答案 0 :(得分:1)
我知道这已经老了...但我遇到了同样的问题。我通过在crontab中设置变量来解决这个问题...添加到cron的顶部DISPLAY =:0