我正在尝试使用页面工厂和页面对象模型运行一个Java项目,我想在Chrome、IE和Firefox上运行它,但我无法在Firefox上运行它,浏览器无法打开,我得到了这个错误 :java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
我的代码是:
@BeforeMethod
public static void openBrowser() {
String browser = "";
if (browser.equalsIgnoreCase("chrome")){
System.setProperty("webdriver.chrome.driver", "src\\test\\Resources\\BrowserDrivers\\chromedriver.exe");
driver = new ChromeDriver();
}
else if (browser.equalsIgnoreCase("ie")){
System.setProperty("webdriver.ie.driver", "src\\test\\Resources\\BrowserDrivers\\IEDriverServer.exe");
driver = new InternetExplorerDriver();
}
else {
driver = new FirefoxDriver();
}
driver = new FirefoxDriver();
driver.get("http://www.google.com/");
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
driver.manage().window().maximize();
}
@AfterMethod
public static void closeBrowser(){
driver.quit();
}
参见例如这Github问题 https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/5245,某些依赖项可能会拖入过时版本的 xml-apis,这可能会导致这种情况,对我有用的解决方案是添加对 xml-apis 的特定依赖项,例如与 Maven 类似
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<version>1.4.01</version>
</dependency>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)