selenium如何在JAVA代码中获取随机元素?
我想在我的代码中添加一个随机元素。例如,我在JAVA代码中有4个元素。我试图得到第二个元素并在这个地方开始运行程序。另一次,当我开始我的程序时,将是一个元素。我怎么得到这个
first element :
while ( true ) {
driver.get( "example_of_page" );
WebElement formEmail = driver.findElement(By.name("email"));
formEmail.sendKeys(Email1);
WebElement formPassword = driver.findElement(By.name("pass"));
formPassword.sendKeys(Password2);
WebElement formRemember = driver.findElement(By.name("persistent"));
formRemember.sendKeys(" ");
formPassword.submit();
second element :
driver.get("example_of_page");
WebElement formEmail = driver.findElement(By.name("email"));
formEmail.sendKeys(Email2);
WebElement formPassword = driver.findElement(By.name("password"));
formPassword.sendKeys(Password2);
WebElement formRemember = driver.findElement(By.name("remember"));
formRemember.sendKeys(" ");
WebElement formSubmit = driver.findElement(By.name("login_button"));
formSubmit.click();
the third element :
driver.get("example_of_page");
WebElement formEmail = driver.findElement(By.name("email"));
formEmail.sendKeys(Email3);
WebElement formPassword = driver.findElement(By.name("password"));
formPassword.sendKeys(Password3);
WebElement formRemember = driver.findElement(By.name("remember"));
formRemember.sendKeys(" ");
WebElement formSubmit = driver.findElement(By.name("login_button"));
formSubmit.click();
the fourth element :
driver.get( "example_of_page" );
WebElement formEmail = driver.findElement(By.name("email"));
formEmail.sendKeys(Email4);
WebElement formPassword = driver.findElement(By.name("pass"));
formPassword.sendKeys(Password4);
WebElement formRemember = driver.findElement(By.name("persistent"));
formRemember.sendKeys(" ");
formPassword.submit();
}
如何在循环中命名、定义此元素以运行随机元素并从此处开始代码?我在这个函数上使用循环,元素和这个元素不能在一个循环上重复
# 1 楼答案
可以使用
Random
获取数组或列表的随机元素还是要一份清单
# 2 楼答案
我认为你在这里要求的基本上是为4个元素选择一个随机元素。一种方法是将这些元素添加到数组中
然后您可以使用Java获得一个随机数
在这里,您可以用您的最小元素数和最大元素数替换max和min。在这种情况下是0到3
获得此数字后,可以使用它索引到元素数组中
希望这个答案有帮助
# 3 楼答案
你可以试试
Random
或Math.random
以下是一个简单的例子:
或
# 4 楼答案
这里是您可能开始的结构,并确保您可以离开块
while
,而不是将其保持在无限循环中