如何修复在与 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>
这个解决方案似乎适用于我的情况。任何其他人都面临这个问题,以上所有其他解决方案均无效。
如何修复在与 WebdriverManager 和 ChromeOptions
一起使用时出现错误 'not resolved to a type' 的 Selenium DesiredCapabilitiespackage 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>
这个解决方案似乎适用于我的情况。任何其他人都面临这个问题,以上所有其他解决方案均无效。