python自动化测试selenium操作checkbox和radiobox技术

form表单中经常涉及复选框(checkbox)和单选框(radiobox),如用户的爱好跑步、游泳、跳舞可以使用复选框,性别男、女可以使用单选框。

(1)checkbox选择或反选:使用click()方法

(2)radiobox有相同的名称,多个值,可先通过名称获得,再通过值判断,选择使用click()方法。

示例页面:

页面代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="javascript:alert('selenium操作表单中checkbox和radiobutton')">
    测试from表单操作checkbox和radiobutton<br>
    跑步:<input type="checkbox" name="running" value="running"><br>
    游泳:<input type="checkbox" name="swimming" value="swimming"><br>
	跳舞:<input type="checkbox" name="dancing" value="dancing"><br>

<!--<hr>分界线-->
    <hr>
    性别:<br>
    男:<input type="radio" name="gender" value="male"><br>
    女:<input type="radio" name="gender" value="female"><br>
    <input type="submit" value="login">
</form>
</body>
</html>

示例脚本:

import os
from selenium import webdriver
from time import sleep
class TestCheckBoxOrRadioBtn(object):
    def setup(self):
        self.driver = webdriver.Chrome()
        path = os.path.dirname(os.path.abspath(__file__))
        file_path = 'file:///'+path+'/html/form.html'
        self.driver.get(file_path)
    def test_checkbox(self):
        #定位跳舞
        dancing=self.driver.find_element_by_name("dancing")
        #如果没有选择,则点击选择
        if not dancing.is_selected():
            dancing.click()
            sleep(2)
        running = self.driver.find_element_by_name("running")
        if not running.is_selected():
            running.click()
            sleep(2)
        swimming = self.driver.find_element_by_name("swimming")
        if not swimming.is_selected():
            swimming.click()
            sleep(2)
        #再次点击取消选择游泳
        swimming.click()
        sleep(2)
        self.driver.quit()
    def test_radio(self):
        #获得元素列表
        gender= self.driver.find_elements_by_name("gender")
        #选中性别男
        gender[0].click()
        sleep(2)
        # 选中性别女
        gender[1].click()
        sleep(2)
        self.driver.quit()
if __name__ == '__main__':
    case = TestCheckBoxOrRadioBtn()
    case.test_checkbox()
    case.test_radio()

运行结果:

以上就是python自动化测试selenium操作checkbox和radiobox技术的详细内容,更多关于selenium操作checkbox和radiobox的资料请关注我们其它相关文章!

(0)

相关推荐

  • python自动化测试selenium核心技术等待条件教程

    Selenium中的鼠标和键盘事件被封装在ActionChains类中,使用方法: ActionChains(driver).click(btn).perform() ActionChains中常用方法: 示例网站:http://sahitest.com/demo 示例场景:打开Sahi Tests页面,点击"Alert Test"页面,鼠标点击页面中"Click For Alert"按钮,弹出警告提示框,判断页面是否存在alert,如存在则切换到警告框,并获取警告

  • python自动化测试selenium操作下拉列表实现

    处理下拉列表需要使用selenium中的工具类Select,常用方法如下: 示例网站:http://sahitest.com/demo 示例场景:打开Sahi Tests页面, (1)点击"Select Test"页面,鼠标点击页面中第一个下拉列表. 示例脚本: from selenium import webdriver from time import sleep from selenium.webdriver.support.select import Select class

  • python自动化测试selenium执行js脚本实现示例

    WebDriver有2个方法执行Java Script脚本. (1)同步执行:execute_script (2)异步执行:execute_async_script from selenium import webdriver from time import sleep class TestScriptss(object): def setup(self): self.driver = webdriver.Chrome() self.driver.get(http://www.baidu.co

  • python自动化测试selenium定位frame及iframe示例

    frame标签有frameset.frame.iframe三种,frameset和其它普通标签没有区别,不会影响正常定位,而frame与iframe对selenium定位而言是一样的. Selenium有以下方法对frame进行操作. 示例网站:http://sahitest.com/demo/framesTest.htm 示例脚本: from selenium import webdriver from time import sleep class TestFrame(object): de

  • Selenium定位元素操作示例

    本文实例讲述了Selenium定位元素操作.分享给大家供大家参考,具体如下: Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等.这个工具的主要功能包括:测试与浏览器的兼容性--测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.测试系统功能--创建回归测试检验软件功能和用户需

  • python自动化测试selenium操作checkbox和radiobox技术

    form表单中经常涉及复选框(checkbox)和单选框(radiobox),如用户的爱好跑步.游泳.跳舞可以使用复选框,性别男.女可以使用单选框. (1)checkbox选择或反选:使用click()方法 (2)radiobox有相同的名称,多个值,可先通过名称获得,再通过值判断,选择使用click()方法. 示例页面: 页面代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&

  • Python自动化测试selenium指定截图文件名方法

    目录 前言: 一.python中时间日期格式化符号 二.使用步骤 1.导入time模块,webdriver类 2.实际代码操作 总结: 前言: Selenium 支持 Web 浏览器的自动化,它提供一套测试函数,用于支持 Web 自动化测试.函数非常灵活,能够完成界面元素定位.窗口跳转.结果比较等功能.支持多种浏览器.多种编程语言(Java.C#.Python.Ruby.PHP 等).支持多种操作系统(Windows.Linux.IOS.Android 等).开源免费. 它主要由三个工具组成:W

  • python自动化测试selenium核心技术处理弹框

    页面上的弹框一般有三种: (1)alert:用来提示 (2)confirm:用来确认 (2)prompt:输入内容 示例网站:http://sahitest.com/demo 示例场景:打开Sahi Tests页面, (1)点击"Alert Test"页面,鼠标点击页面中"Click For Alert"按钮,弹出警告提示框,判断页面是否存在alert,如存在则切换到警告框,并获取警告文本信息,之后点警告框中的确定按钮. (2)点击"Confirm Pag

  • python自动化测试selenium核心技术三种等待方式详解

    目录 1 使用python自带模块time的sleep方式 2 隐式等待(implicitly_wait) 3 显示等待(WebDriverWait) UI自动化测试过程中,可能会出现因测试环境不稳定.网络慢等情况,如果不做任何处理的话,会出现无法定位到特定元素而报错,导致自动化测试无法顺利执行. selenium官网手册:Waits | Selenium slenium自动化测试中,主要涉及三种等待方式: 1 使用python自带模块time的sleep方式 缺点:即使网络条件较好时,依旧按照

  • python自动化测试selenium屏幕截图示例

    WebDriver内置了测试中捕获屏幕并保存的方法. 示例脚本: (1)save_screenshot(filename):保存屏幕截图 from selenium import webdriver from time import sleep,strftime,localtime,time import os class TestScreenShot(object): def setup(self): self.driver = webdriver.Chrome() self.driver.g

  • python中selenium操作下拉滚动条的几种方法汇总

    UI自动化中经常会遇到元素识别不到,找不到的问题,原因有很多,比如不在iframe里,xpath或id写错了等等:但有一种是在当前显示的页面元素不可见,拖动下拉条后元素就出来了. 比如下面这样一个网页,需要进行拖动下拉条后才能通过selenium找到密码输入框的元素, 在python中有几种方法解决这种问题,简单介绍下,给需要的人: 方法一)使用js脚本直接操作,方法如下: js="var q=document.getElementById('id').scrollTop=10000"

随机推荐