我第一次使用Marionette驱动程序,当我运行测试浏览器窗口打开并且它命中测试(代码)中指定的URL但它没有在文本字段中输入任何文本并引发跟随错误。?? < / p>
java.lang.NoClassDefFoundError: 组织/ openqa /硒/内部/ HasIdentity at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) 在java.net.URLClassLoader.access $ 100(未知来源) 在java.net.URLClassLoader $ 1.run(未知来源) 在java.net.URLClassLoader $ 1.run(未知来源) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher $ AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) 在org.openqa.selenium.remote.internal.JsonToWebElementConverter.newRemoteWebElement(JsonToWebElementConverter.java:77) 在org.openqa.selenium.remote.internal.JsonToWebElementConverter.apply(JsonToWebElementConverter.java:57) 在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:653) 在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:363) 在org.openqa.selenium.remote.RemoteWebDriver.findElementByCssSelector(RemoteWebDriver.java:492) 在org.openqa.selenium.remote.RemoteWebDriver.findElementById(RemoteWebDriver.java:415) 在org.openqa.selenium.By $ ById.findElement(By.java:214) 在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:355) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) 在org.openqa.selenium.support.events.EventFiringWebDriver $ 2.invoke(EventFiringWebDriver.java:101) at com.sun.proxy。$ Proxy19.findElement(Unknown Source) 在org.openqa.selenium.support.events.EventFiringWebDriver.findElement(EventFiringWebDriver.java:184) 在com.pearson.itautomation.bca.Browser $ WaitForElementFunction.apply(Browser.java:64) 在com.pearson.itautomation.bca.Browser $ WaitForElementFunction.apply(Browser.java:48) 在org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:208) 在com.pearson.itautomation.bca.Browser.getElementWithWait(Browser.java:307) 在com.pearson.itautomation.bca.interaction.SendTextToElementAction.perform(SendTextToElementAction.java:64) 在com.pearson.itautomation.bca.BrowserAction.performWithStates(BrowserAction.java:104) 在com.pearson.itautomation.bca.BrowserAction.performWithStates(BrowserAction.java:80) at pearson.ePortfolio.Actions.CommonActions.edTPALogin(CommonActions.java:181) 在TestCases_PSP.SendTaskLevelFeedbackRequest.TaskFeedbackRequest(SendTaskLevelFeedbackRequest.java:64) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84) 在org.testng.internal.Invoker.invokeMethod(Invoker.java:714) 在org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901) at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231) at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127) at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111) 在org.testng.TestRunner.privateRun(TestRunner.java:767) 在org.testng.TestRunner.run(TestRunner.java:617) 在org.testng.SuiteRunner.runTest(SuiteRunner.java:334) 在org.testng.SuiteRunner.run顺序(SuiteRunner.java:329) 在org.testng.SuiteRunner.privateRun(SuiteRunner.java:291) 在org.testng.SuiteRunner.run(SuiteRunner.java:240) 在org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) 在org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224) 在org.testng.TestNG.runSuitesLocally(TestNG.java:1149) 在org.testng.TestNG.run(TestNG.java:1057) at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111) 在org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204) 在org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175) 引起:java.lang.ClassNotFoundException:org.openqa.selenium.internal.HasIdentity 在java.net.URLClassLoader $ 1.run(未知来源) 在java.net.URLClassLoader $ 1.run(未知来源) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher $ AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ...还有60多个
FF浏览器版本:47.0.1 selenium-java:2.52.0
答案 0 :(得分:1)
将selenium-java升级到2.53.1。 Firefox 47.0.1已经修复了selenium webdriver的问题。您可以成功运行FirefoxDriver();
的测试自动化答案 1 :(得分:0)
我认为在您的POM文件中明确升级您的selenium-API会让您摆脱这些错误,而且在我的情况下也是如此。 org.seleniumhq.selenium 硒的Java 2.53.0 org.seleniumhq.selenium 硒的API 2.53.0