美文网首页
自动化测试——selenium之checkbox全选、取消选中

自动化测试——selenium之checkbox全选、取消选中

作者: 顶宝麻麻 | 来源:发表于2019-04-22 17:44 被阅读0次

checkbox.html

<!DOCTYPE html>
<html lang="en">
<link>
    <meta charset="UTF-8">
    <title>Checkbox</title>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
    <h3>checkbox</h3>
    <div class="well">
        <form class="form-horizontal">
            <div class="control-group">
                <label class="control-label" for="c1">checkbox1</label>
                <div class="controls">
                    <input type="checkbox" id="c1"/>
                </div>
            </div>
            <div class="control-group">
                <label class="control-label" for="c2">checkbox2</label>
                <div class="controls">
                    <input type="checkbox" id="c2"/>
                </div>
            </div>
            <div class="control-group">
                <label class="control-label" for="c3">checkbox3</label>
                <div class="controls">
                    <input type="checkbox" id="c3"/>
                </div>
            </div>
        </form>
    </div>
</body>
</html>

checkbox.py

from selenium import webdriver
import os,time

driver = webdriver.Chrome()
file_path = 'file:////' + os.path.abspath('checkbox.html')
driver.get(file_path)

# # 选择页面上所有的tag name为input的元素
# inputs = driver.find_elements_by_tag_name('input')
#
# # 然后从中过滤出type 为 checkbox的元素,单击勾选
# for i in inputs:
#     if i.get_attribute('type') == 'checkbox':
#         i.click()
#         time.sleep(2)

# 通过XPath找到type = checkbox
#checkboxes = driver.find_elements_by_xpath("//input[@type='checkbox']")

# 通过css 找到type = checkbox
checkboxes = driver.find_elements_by_css_selector('input[type=checkbox]')

for checkbox in checkboxes:
    checkbox.click()
    time.sleep(2)

# 打印当前页面上type为checkbox的个数
print("checkbox 的个数:",len(checkboxes))

# 取消最后一个选中
driver.find_elements_by_css_selector('input[type=checkbox]').pop().click()
time.sleep(3)

# 取消第一个选中
driver.find_elements_by_css_selector('input[type=checkbox]').pop(0).click()
time.sleep(3)

# 取消第二个选中
driver.find_elements_by_css_selector('input[type=checkbox]').pop(1).click()
time.sleep(3)

# 全部取消选中
# for checkbox in checkboxes:
#     checkbox.click()

driver.quit()

相关文章

网友评论

      本文标题:自动化测试——selenium之checkbox全选、取消选中

      本文链接:https://www.haomeiwen.com/subject/xmeugqtx.html