try {
List<WebElement> list1 = driver.findElements(By.tagName("a"));
for (WebElement e : list1) {
if (e.getAttribute("href").equalsIgnoreCase("/ProductsRoute.do")) {
if (driver.findElement(By.id("buttonCheck++Check")).isDisplayed()) {
driver.findElement(By.id("buttonCheck++Check")).click();
ProductConfPageexceptionHandler(driver);
break;
}
else if (driver.findElement(By.name("Next")).isDisplayed()) {
WebElement nextBut = driver.findElement(By.name("Next"));
nextBut.click();
break;
}
break;
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
Das Problem ist, dass, wenn das Skript e.getAttribute („href“) ausführt, ist es für /ProductsRoute.do aussieht. Wenn es es nicht findet, sollte es dort brechen. Aber das Problem ist, dass ich java.lang.NullPointerException bekomme.wenn sonst nicht in Selen WebDriver arbeiten, wenn equalsIgnoreCase
Die Erwartung ist, dass es versuchen sollte, die href /Products.do zu finden, wenn es nicht da ist, sollte es dort brechen. Wenn es in /Product.do ist, sollte es das nächste if ausführen. Brauchen Sie Hilfe bei der Suche nach dem Problem? Danke Leute!
Verwenden Sie statt dessen "" /ProductsRoute.do".equalsIgnoreCase(e.getAttribute("href ")". –
haben Sie U-Code debuggen und welche Zeile gibt es Fehler? – noor
Scheint, dass es ein Problem mit der Klasse if gibt, die ich benutzt habe. Es sollte driver.findElement (By.) Sein. IsDisplayed(); { – Mathan