定位一组对象的方法与定位单个对象的方法类似,唯一的区别是在单词element后面多了个s表示复数。定位一组对象一般用于如下场景:
- 批量操作对象,比如将页面上所有的复选框都被勾选
- 先获取一组对象,再将这组对象中过滤出需要具体定位的一些对象,比如定位出页面上所有checkbox,然后选择最后一个
System.setProperty("webdriver.firefox.bin", "D:/Program Files (x86)/Mozilla Firefox/firefox.exe");
System.setProperty("webdriver.gecko.driver", "E://selenium//geckodriver-v0.24.0-win64//geckodriver.exe");
WebDriver driver=new FirefoxDriver();
String str="file:///E:/javaworkspace/Selenium_learn/txt/checkbox.html";
System.out.println(str);
driver.get(str);
List<WebElement> checkboxs=driver.findElements(By.name("Fruit"));
Actions action=new Actions(driver);
action.doubleClick(checkboxs.get(0));
System.out.println("double click end....");
//输入框输入内容
for(WebElement e:checkboxs)
{
e.click();;
}
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<title>Checkbox</title>
</head>
<body>
<h3>checkbox</h3>
<form action="" method="get">
您喜欢的水果?<br /><br />
<label><input name="Fruit" type="checkbox" value="" />苹果 </label>
<label><input name="Fruit" type="checkbox" value="" />桃子 </label>
<label><input name="Fruit" type="checkbox" value="" />香蕉 </label>
<label><input name="Fruit" type="checkbox" value="" />梨 </label>
</form>
</body>
</html>