加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Selenium driver Exception

发布时间:2020-12-15 07:34:38 所属栏目:Java 来源:网络整理
导读:java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information,see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https:

java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information,see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases
?? ?at com.google.common.base.Preconditions.checkState(Preconditions.java:847)
?? ?at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:134)
?? ?at org.openqa.selenium.firefox.GeckoDriverService.access$100(GeckoDriverService.java:44)
?? ?at org.openqa.selenium.firefox.GeckoDriverService$Builder.findDefaultExecutable(GeckoDriverService.java:167)
?? ?at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:355)
?? ?at org.openqa.selenium.firefox.FirefoxDriver.toExecutor(FirefoxDriver.java:190)
?? ?at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:147)
?? ?at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:125)
?? ?at selenium_test.TestJunit.setUp(TestJunit.java:16)
?? ?at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
?? ?at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
?? ?at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
?? ?at java.lang.reflect.Method.invoke(Unknown Source)
?? ?at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
?? ?at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
?? ?at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
?? ?at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
?? ?at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
?? ?at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
?? ?at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
?? ?at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
?? ?at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
?? ?at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
?? ?at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
?? ?at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
?? ?at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
?? ?at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89)
?? ?at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)

java.lang.NullPointerException
?? ?at selenium_test.TestJunit.tearDown(TestJunit.java:31)
?? ?at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
?? ?at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
?? ?at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
?? ?at java.lang.reflect.Method.invoke(Unknown Source)
?? ?at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
?? ?at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
?? ?at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
?? ?at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:37)
?? ?at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
?? ?at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
?? ?at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
?? ?at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
?? ?at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
?? ?at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
?? ?at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
?? ?at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
?? ?at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89)
?? ?at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
?? ?at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)

解决办法:我们只要在WebDriver driver = new FirefoxDriver(); 前面指定我们浏览器的具体信息即可,比如:System.setProperty ( "webdriver.firefox.bin","E:/app/Firefox/firefox.exe" );WebDriver driver = new FirefoxDriver();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读