首页 > 其他分享 >form表单元素测试(checkbox和radio)

form表单元素测试(checkbox和radio)

时间:2024-10-21 23:32:04浏览次数:7  
标签:checkbox form self driver radio reading click swimming

一、定义form表单

用到的元素:checkbox和radiobutton
下图定义了一个选择爱好和选择性别的form表单,区域1用到的表单元素是checkbox(复选框),区域2用到的表单元素是radiobutton
image


点击查看代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="javascript:alert('test')">
    swimming:<input type="checkbox" name="swimming" value="swimming"><br>
    reading:<input type="checkbox" name="reading" value="reading"><br>
<hr>
    gender<br>
    <input type="radio" name="gender" value="male" text="male"><label>male</label><br>
    <input type="radio" name="gender" value="female" text="female"><label>female</label><br>
    <input type="submit" name="login" value="login">
</form>
</body>
</html>

二、测试checkbox

用例1:选中checkbox选项
预期结果1:正常选中
swimming=self.driver.find_element(By.NAME, 'swimming')#定位元素
if not swimming.is_selected():
    swimming.click() #选中swimming

reading=self.driver.find_element(By.NAME, 'reading')#定位元素
if not reading.is_selected():
    reading.click()  #选中reading
sleep(10)

image


用例2:反选checkbox选项
结果2:不选中选项
swimming.click()
sleep(2)

image


三、测试radiobutton

用例1:选中男性
结果1:正常选中
ls=self.driver.find_elements(By.NAME, 'gender')
#find_elements()方法返回一个WebElement对象列表
ls[0].click()
sleep(2)

image


用例2:选中女性
结果2:正常选中
ls=self.driver.find_elements(By.NAME, 'gender')
ls[1].click()
sleep(2)

image

四、代码

点击查看代码
from selenium import webdriver
from time import sleep
import os
from selenium.webdriver.common.by import By

class TestCase:
    def __init__(self):
        self.driver = webdriver.Edge()
        path = os.path.dirname(os.path.abspath(__file__))  # 获取当前路径的父目录
        file_path = 'file:///' + path + '/form1.html'  # 获取form表单完整路径
        self.driver.get(file_path)  # 加载form表单

    def test_checkbox(self):
        swimming=self.driver.find_element(By.NAME, 'swimming')
        if not swimming.is_selected():
            swimming.click()# 选中swimming
        reading=self.driver.find_element(By.NAME, 'reading')
        if not reading.is_selected():
            reading.click()  # 选中reading
        sleep(2)

        swimming.click()
        sleep(2)
        self.driver.quit()

    def test_radio(self):
        ls=self.driver.find_elements(By.NAME, 'gender')
        #ls[0].click()
        ls[1].click()
        sleep(2)
        self.driver.quit()

if __name__=="__main__":
    case = TestCase()
    #case.test_checkbox()
    case.test_radio()

标签:checkbox,form,self,driver,radio,reading,click,swimming
From: https://www.cnblogs.com/jongjongjong/p/18488191

相关文章

  • C#中WPF和WinForms有什么区别?
    C#中WPF和WinForms有什么区别? WPF(WindowsPresentationFoundation)和WinForms(WindowsForms)都是微软提供的用于开发Windows桌面应用程序的框架,但它们在设计理念、功能和用户体验方面存在一些显著的差异:用户界面的构建方式:WPF 使用XAML(eXtensibleApplicationMarkupLang......
  • React项目中的antd,Form和Table如何一起使用
    React项目中的antd,Form和Table如何一起使用在项目中我们可能会遇到单独的表格,单独的表单这样使用。但是稍微复杂一点,如果是表单中存在一个类似于表格的列表,我们能够动态的去增加删除。或者是表格中的每一行中的某一列或者多个列是表单信息,那么我们又应该怎么实现呢?const[toForm......
  • 用于快速创建机器学习模型的 Web 接口或用户界面的python库:gradio
    一、简介gradio是一个Python库,用于快速创建机器学习模型的Web接口或用户界面,主要优点是允许开发者通过少量的代码创建交互式的Web界面,用户能够上传输入数据并查看模型的输出结果。二、主要特性易于使用:只需几行代码就可以创建接口,不需要前端开发知识。支持多种输入......
  • 八,System、Date 和 SimpleDateFormat (与时间相关)
    Java中的System、Date和SimpleDateFormat类详解在Java中,System、Date和SimpleDateFormat类是处理系统操作和日期时间的基础类。这些类提供了丰富的方法来执行系统级操作、处理日期和格式化日期时间。System类System类是Java中的一个工具类,提供了多种与系统相关的......
  • 炸了!改进Transformer!Transformer-BiGRU多变量回归预测(Matlab)
    炸了!改进Transformer!Transformer-BiGRU多变量回归预测(Matlab)目录炸了!改进Transformer!Transformer-BiGRU多变量回归预测(Matlab)分类效果基本介绍程序设计参考资料分类效果基本介绍1.Matlab实现Transformer-BiGRU多变量回归预测,Transformer-BiGRU;2.运行环境......
  • YOLOv11改进策略【卷积层】| ECCV-2024 Histogram Transformer 直方图自注意力 适用于
    一、本文介绍本文记录的是利用直方图自注意力优化YOLOv11的目标检测方法研究。在目标检测任务中,清晰准确的图像对于目标检测至关重要,本文创新方法通过恢复图像质量,可以减少因图像质量低导致的误检和漏检,实现有效涨点。专栏目录:YOLOv11改进目录一览|涉及卷积层、轻量化......
  • Delphi10.3 RadioGroup1 组件基本用法
    https://www.cnblogs.com/jijm123/p/14237063.html1]添加Radio项目 也可用代码添加RadioGroup1.Items.Add('Delphi7');RadioGroup1.Items.Add('Delphi10.3');而不是添加RadioButton11.RadioGroup的主要属性(1)Columns:属性属性Columns:用于设置单选按钮组中按......
  • 2024年数字化转型与管理国际学术会议(DTM 2024) 2024 International Conference on Digi
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus大会时间:2024年11月22-24日三、大会介绍2024年数字化转型与管理国际学术会......
  • Transformer中的位置编码(Positional Encoding)
    Transformer中的位置编码(PositionalEncoding)标准位置编码原理上Transformer是无法隐式学到序列的位置信息的,为了可以处理序列问题,Transformer提出者的解决方案是使用位置编码(PositionEncode/Embedding,PE)[1][2].大致的处理方法是使用sin和cos函数交替来创建位置编码PE,......
  • IPMI(智能平台管理接口,Intelligent Platform Management Interface)是一种行业标准的接
    IPMI(智能平台管理接口,IntelligentPlatformManagementInterface)是一种行业标准的接口规范,主要用于服务器和计算机系统的管理。它提供了硬件监控和管理功能,使管理员能够远程监控和控制计算机系统。以下是IPMI的一些主要特点和功能:主要特点硬件监控:IPMI能够监控系统的硬件状态......