0

我第一次使用 Marionette 驱动程序,当我运行测试时,浏览器窗口打开,它访问了 test(code) 中指定的 URL,但它没有在文本字段中输入任何文本并引发以下错误。??

java.lang.NoClassDefFoundError: org/openqa/selenium/internal/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) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) 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来源)在 org.openqa.selenium 的 java.lang.ClassLoader.loadClass(Unknown Source)。remote.internal.JsonToWebElementConverter.newRemoteWebElement(JsonToWebElementConverter.java:77) at org.openqa.selenium.remote.internal.JsonToWebElementConverter.apply(JsonToWebElementConverter.java:57) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver. java:653) 在 org.openqa.selenium.remote.RemoteWebDriver.findElementByCssSelector(RemoteWebDriver.java:492) 在 org.openqa.selenium.remote 的 org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:363) .RemoteWebDriver.findElementById(RemoteWebDriver.java:415) 在 org.openqa.selenium.By$ById.findElement(By.java:214) 在 org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:355) 在sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect。NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.openqa.selenium.support.events.EventFiringWebDriver$2.invoke(EventFiringWebDriver .java:101) 在 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) at com.pearson.itautomation.bca.Browser$WaitForElementFunction.apply(Browser.java:48) at org.openqa.selenium.support.ui.FluentWait.until(FluentWait. java:208) 在 com.pearson.itautomation.bca.Browser.getElementWithWait(Browser.java:307) 在 com.pearson.itautomation.bca。com.pearson.itautomation.bca.BrowserAction.performWithStates(BrowserAction.java:104) com.pearson.itautomation.bca.BrowserAction.performWithStates(BrowserAction.java:80) 的交互.SendTextToElementAction.perform(SendTextToElementAction.java:64)在 pearson.ePortfolio.Actions.CommonActions.edTPALogin(CommonActions.java:181) 在 TestCases_PSP.SendTaskLevelFeedbackRequest.TaskFeedbackRequest(SendTaskLevelFeedbackRequest.java:64) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 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) at org.testng.internal.Invoker.invokeMethod(Invoker.java:714) at 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) 在 org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111) 在 org.testng.TestRunner.privateRun(TestRunner.java:767) 在 org. testng.TestRunner.run(TestRunner.java:617) at org.testng.SuiteRunner.runTest(SuiteRunner.java:334) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329) at 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) at org.testng.TestNG.runSuitesLocally(TestNG.java:1149) at org.testng.TestNG.run (TestNG.java:1057) 在 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 at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown源)在 java.security.AccessController.doPrivileged(Native Method) 在 java.net.URLClassLoader.findClass(Unknown Source) 在 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

4

2 回答 2

1

将你的 selenium-java 升级到 2.53.1。Firefox 47.0.1 已经修复了 selenium webdriver 的问题。您可以成功运行 FirefoxDriver() 的测试自动化;

于 2016-07-16T11:08:19.997 回答
0

我认为在您的 POM 文件中显式升级您的 selenium-API 将使您摆脱这些错误,在我的情况下它确实如此.. org.seleniumhq.selenium selenium-java 2.53.0 org.seleniumhq.selenium selenium-api 2.53.0

于 2016-07-18T08:45:42.310 回答