我正在学习使用WedDriver。我找到了这个例子来演示如何使用findElements(by)方法。该例子使用for循环在网页上找到搜索框。有人可以解释它是如何工作的,并将它与常规的循环使用进行比较吗?谢谢你的帮助。如果你可以通过使用for循环遍历web元素来为我提供一些教程示例,这将有助于我的理解。谢谢!
通过常规循环我的意思
for (int i = 0; i<=10; i++){
System.out.println(i);
}
for(WebElement ele: elements){
ele.sendKeys("hexbytes");
}
以下是来自网络的代码示例:
import java.util.List;
import org.junit.Test;
import org.junit.Before;
import org.junit.After;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class WD_findElements
{
@Test
public void test_byid()
{
/**
* Identifying elements by Id
* Example: Identify search boxes with id and fill them with some text
*/
WebDriver driver = new FirefoxDriver();
try
{
driver.get("http://www.hexbytes.com");
//Identify the search boxes in the pages
List<WebElement> elements = driver.findElements(By.id("s"));
//display number of elements
System.out.print("Number of search elements: "+ elements.size());
for(WebElement ele: elements){
ele.sendKeys("hexbytes");
}
}
finally{
driver.close();
}
}//end of test_by_id method
}
答案 0 :(得分:1)
这个for循环只是迭代列表的另一种方式。 它或多或少等同于
for (int i = 0; i<=elements.size(); i++){
WebElement ele = elements.get(i);
....
}
Here你有更多的例子。