seleniumu 复选框操作(定位一组元素)

HTML代码如下:

复制代码
DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<title>Checkboxtitle>
<link
    href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css"
    rel="stylesheet" />
<script
    src="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.js">script>
head>
<body>
    <h3>checkboxh3>
    <div class="well">
        <form class="form-horizontal">
            <div class="control-group">
                <label class="control-label" for="c1">checkbox1label>
                <div class="controls">
                    <input type="checkbox" id="c1" />
                div>
            div>
            <div class="control-group">
                <label class="control-label" for="c2">checkbox2label>
                <div class="controls">
                    <input type="checkbox" id="c2" />
                div>
            div>
            <div class="control-group">
                <label class="control-label" for="c3">checkbox3label>
                <div class="controls">
                    <input type="checkbox" id="c3" />
                div>
            div>
        form>
    div>
body>
html>
复制代码

 

谷歌浏览器代码如下:

复制代码
public static void main(String[] args) throws IOException, InterruptedException {
System.setProperty("webdriver.chrome.driver", "D:/chromedriver_win32/chromedriver.exe");
ChromeOptions Options = new ChromeOptions();
Options.addArguments("user-data-dir=C:\\Users\\happy\\AppData\\Local\\Google\\Chrome\\User Data");
WebDriver driver = new ChromeDriver(Options);
try {
File file = new File("C:/Users/happy/Desktop/NewFile.html");
// Java 流(Stream) 中的File类
String filepath = file.getAbsolutePath();
// 获取文件的绝对路径
driver.get(filepath);
// 在浏览器中打开相关文件NewFile.html
List inputs = driver.findElements(By.tagName("input"));
// 把所有的input标签放入List集合。然后用foreach 遍历元素。
for (WebElement checkbox : inputs) {
String type1 = new String(checkbox.getAttribute("type"));
if (type1.equals("checkbox")) {
System.out.println(checkbox.getAttribute("id"));
// 打印出执行点击操作的元素的id
checkbox.click();
}
}

} finally

{
Thread.sleep(10000);
driver.close();
driver.quit();
}
}
复制代码

driver.navigate().refresh();
这个方法用于刷新页面。
inputs.size()
size()方法可以计算获得元素的个数。这里获得的结果为3。3 减1 为2。

inputs.get().click();//集合的get()方法,可以直接对指定元素进行操作。获取集合中的指定元素。
get()指定得到元素组中的第几个元素,并对其时行click()操作。


你可能感兴趣的:(Selenium)