For循环仅运行一次以删除电子邮件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了For循环仅运行一次以删除电子邮件相关的知识,希望对你有一定的参考价值。
我正在尝试使用java / selenium的for循环运行多次以删除电子邮件,但仅运行一次。我仍然是一个初学者,无法弄清楚我做错了什么。有人可以给我一些帮助吗?非常感谢您的帮助。下面是我正在运行的代码:
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
public class deleteYahooEmail
public static void main(String[] args) throws InterruptedException
System.setProperty("webdriver.gecko.driver", "/Users/lena/WebDrivers/geckodriver.exe");
WebDriver driver = new FirefoxDriver(); //launches the browser
driver.get("https://login.yahoo.com/");
Thread.sleep(2000);
driver.findElement(By.id("login-username")).sendKeys("someemailhere@yahoo.com");
Thread.sleep(2000);
driver.findElement(By.id("login-signin")).click();
Thread.sleep(2000);
driver.findElement(By.id("login-passwd")).sendKeys("passwrdhere");
Thread.sleep(2000);
driver.findElement(By.id("login-signin")).click();
Thread.sleep(2000);
driver.findElement(By.id("header-mail-button")).click();
WebDriverWait wait = new WebDriverWait(driver, 30);
for (int i = 0; i >10; i = i + 1)
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//button[@type='button' and @data-test-id='checkbox']"))).click();
driver.findElement(By.xpath("//button[@type='button' and @data-test-id='toolbar-delete']")).click();
答案
[i ++
和i = i + 1
相同。
for循环的问题是您的条件语句始终为false
,因此循环将永远不会执行。
您基本上说的是,当我超过10岁时执行for循环主体,您能明白为什么它永远不会执行吗?它永远不会在您将i初始化为0时运行。请参见我的图表。
有关循环的更多信息,请参见:https://www.w3schools.com/java/java_for_loop.asp
另一答案
@@ Bradley,我明白了!是的下面的代码为我工作。我能够不断删除我的Yahoo电子邮件。
int a = 100;for(int x = a; x> = 10; a--)此处带有连续代码
以上是关于For循环仅运行一次以删除电子邮件的主要内容,如果未能解决你的问题,请参考以下文章