我有一個 Spring Boot 應用程式,我想用 Selenium 測驗它。我正在使用 WebDriverManager v5.0.3
設定 WebDriver 時WebDriverManager.chromedriver().setup();出現例外:
java.lang.NoClassDefFoundError: org/openqa/selenium/internal/Require
或者
java.lang.ClassNotFoundException: org.openqa.selenium.internal.FindsById
我的 pom.xml 包含這個:
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.0.3</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-api</artifactId>
<version>4.1.0</version>
</dependency>
uj5u.com熱心網友回復:
WebDriverManager v5 和 Selenium v??4 之間存在不兼容。將 Selenium 降級到最新的 v3 顛覆后,一切正常。
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>5.0.3</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-api</artifactId>
<version>3.141.59</version>
</dependency>
uj5u.com熱心網友回復:
我剛剛遇到了同樣的問題。查看WebDriverManager的pom.xml,我可以看到 selenium-java 是 4.1.0,具有提供的范圍。我的情況發生在我嘗試構建驅動程式時......
ChromeOptions 功能 = (ChromeOptions) createCapabilities(); ChromeDriverService chromeDriverService =ChromeDriverService.createDefaultService(); ChromeDriver webDriver = new ChromeDriver(chromeDriverService, capabilities);
那是我看到堆疊跟蹤的時候:
Starting ChromeDriver 96.0.4664.45 (76e4c1bb2ab4671b8beba3444e61c0f17584b2fc-refs/branch-heads/4664@{#947}) on port 17826
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
Step failed
java.lang.NoClassDefFoundError: org/openqa/selenium/internal/Require
at org.openqa.selenium.json.NumberCoercer.<init>(NumberCoercer.java:49)
at org.openqa.selenium.json.JsonTypeCoercer.<init>(JsonTypeCoercer.java:71)
at org.openqa.selenium.json.JsonTypeCoercer.<init>(JsonTypeCoercer.java:53)
at org.openqa.selenium.json.Json.<init>(Json.java:37)
at org.openqa.selenium.remote.NewSessionPayload.create(NewSessionPayload.java:99)
at org.openqa.selenium.remote.NewSessionPayload.create(NewSessionPayload.java:93)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:67)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:212)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:130)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:181)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:168)
at com.mycompanynamereplaced.cucumber.commons.webdriver.LocalWebDriverFacade.createChromeWebDriver(LocalWebDriverFacade.java:99)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/370769.html
標籤:硒 硒网络驱动程序 网络驱动管理器 webdrivermanager-java
