当 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/