jenkins - 在 ubuntu 14.1 上安装的 Jenkins 上运行 TestNG 测试用例时出现 "java.lang.IllegalStateException: The driver is not executable"错误

标签 jenkins selenium-webdriver testng selenium-chromedriver

当 TestNG 测试用例在 ubuntu 14.1 上安装的 Jenkins 上运行时,会出现“java.lang.IllegalStateException: The driver is not executable”错误。好像 Chromedriver 没有在安装在 ubuntu 上的 jenkin 上启动,在 Window 操作系统上的 jenkin 安装上尝试了相同的配置,工作正常。如果有任何解决方案,请提供给我。

控制台输出:

run:
   [testng] org.testng.TestNGException: 
   [testng] Cannot instantiate class TestCase.NewsArticles_Section_TC
   [testng]     at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:38)
   [testng]     at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:387)
   [testng]     at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:299)
   [testng]     at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:110)
   [testng]     at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:186)
   [testng]     at org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:120)
   [testng]     at org.testng.TestRunner.initMethods(TestRunner.java:409)
   [testng]     at org.testng.TestRunner.init(TestRunner.java:235)
   [testng]     at org.testng.TestRunner.init(TestRunner.java:205)
   [testng]     at org.testng.TestRunner.<init>(TestRunner.java:153)
   [testng]     at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:522)
   [testng]     at org.testng.SuiteRunner.init(SuiteRunner.java:157)
   [testng]     at org.testng.SuiteRunner.<init>(SuiteRunner.java:111)
   [testng]     at org.testng.TestNG.createSuiteRunner(TestNG.java:1299)
   [testng]     at org.testng.TestNG.createSuiteRunners(TestNG.java:1286)
   [testng]     at org.testng.TestNG.createSuiteRunners(TestNG.java:1289)
   [testng]     at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
   [testng]     at org.testng.TestNG.run(TestNG.java:1057)
   [testng]     at org.testng.TestNG.privateMain(TestNG.java:1364)
   [testng]     at org.testng.TestNG.main(TestNG.java:1333)
   [testng] Caused by: java.lang.reflect.InvocationTargetException
   [testng]     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   [testng]     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
   [testng]     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
   [testng]     at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
   [testng]     at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29)
   [testng]     ... 19 more
   [testng] Caused by: java.lang.ExceptionInInitializerError
   [testng]     at pagefactory.NewsArticle_Section.NewsArticle_Section_Add.<init>(NewsArticle_Section_Add.java:18)
   [testng]     at TestCase.NewsArticles_Section_TC.<init>(NewsArticles_Section_TC.java:14)
   [testng]     ... 24 more
   [testng] Caused by: java.lang.IllegalStateException: The driver is not executable: /var/lib/jenkins/jobs/Mentis kitchen test/workspace/lib/chromedriver.exe
   [testng]     at com.google.common.base.Preconditions.checkState(Preconditions.java:197)
   [testng]     at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:126)
   [testng]     at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:117)
   [testng]     at org.openqa.selenium.chrome.ChromeDriverService.access$0(ChromeDriverService.java:1)
   [testng]     at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:118)
   [testng]     at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:291)
   [testng]     at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:82)
   [testng]     at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:117)
   [testng]     at reusablescript.driver.<clinit>(driver.java:12)
   [testng]     ... 26 more
   [testng] The tests failed.

makexsltreports:

最佳答案

看起来您正在尝试在 Linux 上运行 chromedriver.exe。您必须下载适用于 Linux 的二进制文件。堆栈跟踪中的 .exe 看起来不正确。

然后你必须向它添加可执行标志 chmod +x chromedriver

关于jenkins - 在 ubuntu 14.1 上安装的 Jenkins 上运行 TestNG 测试用例时出现 "java.lang.IllegalStateException: The driver is not executable"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31000190/

相关文章:

svn - Jenkins存储SVN凭证的位置

django - 使用 Jenkins 自动启动多个 celery 守护进程

git - hudson git https 密码,我该如何指定?

javascript - Protractor 持久变量

internet-explorer-9 - Selenium 2 Webdriver和IE 9安全证书

java - Selenium 网络驱动程序 : how to verify that there is a heading titled “Download” on the page wrapped in <h2> tags?

java - 如果发生特定异常,请在 selenium 中重新启动测试

linux - jenkins 的未知进程 - "kxjdhendlvie"

unit-testing - JUnit 4 与 TestNG - 更新 2013 - 2014

java - 如何在控制台输入后触发testng文件的执行