Sono nuovo al web selenio Selenium, forse questa domanda è ovvia. Sono dopo situazione come questa:Utilizzo del webdriver per vedere se esiste un elemento SENZA lanciare un'eccezione?
Se l'elemento esiste, clic su di esso e tornare alla pagina indice:
driver.findElement(By.id("...."])).click();
se non lo fa uscire, saltare e tornare alla pagina indice. Il test continua ancora senza alcuna eccezione lanciata.
so una soluzione a questo:
driver.findElements(By.id("...")).size() != 0
così ho provato:
if(driver.findElements(By.id("....")).size() > 0)
{
driver.findElement(By.id("....")).click();
driver.findElement(By.cssSelector("...")).click();
}
else
{
driver.findElement(By.cssSelector("....")).click();
}
Questo si è davvero brutto, però, perché se io ho 10 elementi per verificare, questa condizione se ha bisogno di essere scritto 10 volte.
Qualsiasi soluzione per renderlo ordinato?
grazie per il feedback !! un altro problema è, usando se la sintassi è orribilmente lenta ... c'è un modo per renderlo più veloce? – user1282634
Ok, quindi non utilizzare se istruzione invece di usare il blocco try/catch come segue: try {WebElement elemnt = driver.findElement (By.ID ("..")); elemnt.click();} catch (Eccezione e) {// Niente da fare} – Nayan
capito ~~ grazie !! – user1282634