Ich versuche auf Links auf einer Webseite klicken. Die Webseite ist http://data.worldbank.org/income-level/HIC
. Mit FirefoxWebDriver Exception auf Firefox erhalten, während durch die Links auf einer Webseite - Firefox Web Browser
meine folgenden Umsetzung vor:
//This locates all the countries that I need to click on the page.
By countryList = By.cssSelector("a[href*='data.worldbank.org/country/']");
public void retrieveCountryData() throws Exception{
List<WebElement> countryLinks = driver.findElements(countryList);
for(int i = 0;i<4;i++){
Thread.sleep(5000);
countryLinks.get(i).click();
System.out.println("The Country is: "+ countryLinks.get(i).getText());
driver.navigate().back();
}
}
Für Testzwecke, ich versuche, durch die ersten vier Länder in der Liste zu gehen.
Wenn ich mein Skript ausführen, gibt es mir folgende WebDriverException.
org.openqa.selenium.WebDriverException: Element is not clickable at point (236.5, 9.5). Other element would receive the click: <a href="http://beta.data.worldbank.org"></a>
Command duration or timeout: 87 milliseconds
Build info: version: '2.53.0', revision: '35ae25b', time: '2016-03-15 16:57:40'
System info: host: 'DESKTOP-HQKROAN', ip: '192.168.0.11', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_73'
Driver info: org.openqa.selenium.firefox.FirefoxDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, handlesAlerts=true, databaseEnabled=true, version=46.0, platform=WINDOWS, nativeEvents=false, acceptSslCerts=true, webStorageEnabled=true, locationContextEnabled=true, browserName=firefox, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: 1b28ee66-df0a-4885-b937-08dc061675ea
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:327)
at org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:85)
at pageObjects.WorldBankData.retrieveCountryData(WorldBankData.java:163)
at testCases.SampleTest.getCTex(SampleTest.java:35)
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:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:112)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:205)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:176)
Bitte sagen Sie mir, was ich falsch hier tue. Sie können den HTML-Code der Webseite an Ihrem Ende überprüfen. Dank
Ich rate Firefox scrollt hinunter zum Land Link und dann ist der Link hinter dem blauen Banner an der Spitze und kann nicht angeklickt werden. – eee
Wie kann ich es funktionieren lassen? – Uziii
Sie müssen Scrolling vor jedem Klick zum Element (in die Mitte) integrieren. –