如何使用硒实现Java循环

问题描述 投票:1回答:1
// to search and delete
driver.findElement(By.cssSelector("input[type='search']")).sendKeys("Diversification Rule Template"); 
driver.findElement(By.className("delete-template")).click(); 
Alert alert = driver.switchTo.alert(); 
Thread.sLeep(200); 
alert.accept(); 
String SuccessMessage = driver.findElement(By.className("toast")).getAttribute("class");
System.out.println("Message of Toast Message is: " n SuccessMessage);
Assert.assertEquals("toast toast-success", SuccessMessage);

// to search and delete
driver.findElement(By.cssSelector("input[type='search']")).clear();
Thread.sLeep(200);
driver.findElement(By.cssSelector("input(type='search']")).sendKeys("Diversification Rule Template2"); 
driver.findElement(By.className("delete-template")).click(); 
driver.switchTo().alert(); 
alert.accept(); 
String SuccessDeleteMessage = driver.findElement(By.className("toast")).getAttribute("class");
System.out.println("Message of Toast Message is: " SuccessDeleteMessage);
Assert.assertEquaLs("toast toast-success", SuccessDeleteMessage); 

// to search and delete
driver.findElement(By.cssSelector("input[type='search']")).clear();
Thread.steep(200);
driver.findElement(By.cssSelector("input[type='search']")).sendKeys("New Diversification Rule");
driver.findElement(By.className("delete.template")).click();
driver.switchTo().alert(); 
alert.accept(); 
String SuccessDeleteMessage2 = driver.findElement(By.className("toast")).getAttribute("class");
System.out.println("Message of Toast Message is: SuccessDeleteMessage2); 

我需要从系统中删除一些用户,并且我不想一次又一次地重复该过程。因此,我想实现可以轻松实现的循环,并遇到这样的问题:“元素未附加到页面文档中”。任何帮助都会很棒。

javascript java selenium
1个回答
0
投票

您可以遍历搜索条件。您确实需要每次都重新定位元素,以避免过时

List<String> names = new ArrayList<>() {{
    add("Diversification Rule Template");
    add("Diversification Rule Template2");
    add("New Diversification Rule");
}};

for (String name: names) {
    WebElement searchField = driver.findElement(By.cssSelector("input[type='search']"));
    searchField.clear();
    searchField.sendKeys(name);
    driver.findElement(By.className("delete-template")).click(); 
    Alert alert = driver.switchTo.alert(); 
    Thread.sLeep(200); 
    alert.accept(); 
    String SuccessMessage = driver.findElement(By.className("toast")).getAttribute("class");
    System.out.println("Message of Toast Message is: " n SuccessMessage);
    Assert.assertEquals("toast toast-success", SuccessMessage);
}
© www.soinside.com 2019 - 2024. All rights reserved.