如何修复在与 WebdriverManager 和 ChromeOptions 一起使用时出现错误 'not resolved to a type' 的 Selenium DesiredCapabilities

How to fix Selenium DesiredCapabilities giving Error 'not resolved to a type' while using with WebdriverManager and ChromeOptions

如何修复在与 WebdriverManager 和 ChromeOptions

一起使用时出现错误 'not resolved to a type' 的 Selenium DesiredCapabilities
package pack.tests;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.testng.annotations.BeforeTest;
import org.openqa.selenium.remote.CapabilityType;
//Error The import org.openqa.selenium.remote.CapabilityType cannot be resolved
import org.openqa.selenium.remote.DesiredCapabilities;
//Error The import org.openqa.selenium.remote.DesiredCapabilities cannot be resolved
import io.github.bonigarcia.wdm.WebDriverManager;
public class TestGuru99Login{
@BeforeTest
public void Setup() {
        WebDriverManager.chromedriver().setup();
        ChromeOptions option = new ChromeOptions();
        option.addArguments("--test-type");
        option.addArguments("--disable-popup-bloacking");
        option.addArguments("--incognito");
        DesiredCapabilities chrome = DesiredCapabilities.chrome();
        /*Error
        Multiple markers at this line - DesiredCapabilities cannot be resolved -
        * DesiredCapabilities cannot be resolved to a type*/
        chrome.setJavascriptEnabled(true);
        chrome.setCapability(ChromeOptions.CAPABILITY, option);
        WebDriver driver = new ChromeDriver(option);
        //Error:Type mismatch: cannot convert from ChromeDriver to WebDriver
        driver.get("https://toolsqa.com");
        driver.quit();
    }
}

当您在 ModulePath 中添加了外部 jar 时,就会发生这种情况。 解决方案: 在此处输入代码从节点“Modulepath”中删除外部 jar。 Select 节点“Classpath”然后添加外部 jar。检查 selenium jar 是否已导入。

org.openqa.selenium.remote.DesiredCapabilities 上面一个来自selenium remote driver module。您可以在 POM.xml 中添加以下内容并尝试。您可以根据与其他 selenium 模块的兼容性更改“版本”号。

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-remote-driver</artifactId>
    <version>4.0.0-alpha-3</version>
</dependency>

这个解决方案似乎适用于我的情况。任何其他人都面临这个问题,以上所有其他解决方案均无效。