我是Selenium的新手,目的是熟悉实习。目前,我在导入铬驱动程序罐时遇到问题。我目前正在使用Java 12。这很奇怪,因为当我将编译器切换到 Java 1.8 时,错误似乎消失了。谁能帮我解决这个问题?
package co.edureka.selenium.webdriver.sj;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class launchbrowser {
public static WebDriver driver = null;
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver",".\Driver\chromedriver.exe");
driver = new ChromeDriver();
driver.navigate().to("https://amazon.com");
}
}
"import org.openqa.selenium.chrome.ChromeDriver"显示此错误
"org.openqa.selenium.chrome.ChromeDriver 类型无法访问";
"ChromeDriver((" 显示此错误
"无法将 ChromeDriver 解析为某种类型">
这些错误消息...
The type org.openqa.selenium.chrome.ChromeDriver is not accessible
和
ChromeDriver cannot be resolved to a type
。意味着ChromeDriver在编译时没有被解析。
有关二进制文件和测试框架的更多详细信息,即硒罐或maven将帮助我们以更好的方式分析问题。据推测,您已经从一个JAR源(即selenium-server-standalone-3.141.59或selenium-java-3.141.59JARs(解析了WebDriver和ChromeDriver,但是编译时类正试图从另一个JAR解析。因此,您会看到错误。
溶液
- 要么只保留硒服务器独立-3.141.59.jar作为外部 JAR。
- 或者只保留硒-java-3.141.59JAR作为外部JARs。
- 删除所有其他Selenium Java客户端JAR。
- 通过IDE清理项目工作中心,并仅使用所需的依赖项重新生成项目。
- 重新启动系统。
- 执行您的
@Test
。
此外,您需要提供chromedriver的绝对路径.exe如下所示:
System.setProperty("webdriver.chrome.driver","C:\full_path\Driver\chromedriver.exe");
引用
您可以在以下位置找到一些相关的讨论:
- Chrome Webdriver 无法解析为类型错误 Eclipse 和 Java
- java.lang.Error:未解决的编译问题:WebDriver/ChromeDriver在执行硒测试时无法解析为类型错误