《最新出炉》系列初窥篇-Python+Playwright自动化测试-27-处理单选和多选按钮-番外篇
1.简介
前边几篇文章是宏哥自己在本地弄了一个单选和多选的demo,然后又找了网上相关联的例子给小伙伴或童鞋们演示了一下如何使用playwright来处理单选按钮和多选按钮进行自动化测试,想必大家都已经掌握的八九不离十了吧。这一篇其实也很简单:就是宏哥在网上找了一个问卷调查例子,运用前边所学的知识趁热打铁地给小伙伴或童鞋们来演示一下。前年的文章中的一些单选和多选的基本概念都介绍了,这里就不做赘述了。直接上项目进行实战。
2.项目实战
2.1问卷调查
1.测试问卷调查的地址:
https://www.sojump.com/m/2792226.aspx/
2.问卷页面,如下图所示:

2.2答题思路
自动化测试答题思路,其实和前边单选多选的遍历差不多,具体思路如下:
1.首先找到所有单选和多选按钮的共同点。
2.使用共同点来定位单选和多选按钮,将其放在容器中。
3.利用for循环将其(单选和多选按钮)从容器中一一遍历出来,并进行逐个click。
2.3代码设计
根据答题中的遍历思路进行代码设计如下图所示:

2.4参考代码
# coding=utf-8 # 1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 # 2.注释:包括记录创建时间,创建人,项目名称。
'''
Created on 2023-10-27
@author: 北京-宏哥 QQ交流群:705269076
公众号:北京宏哥
Project: 《最新出炉》系列初窥篇-Python+Playwright自动化测试-27-处理单选和多选按钮-番外篇
''' # 3.导入模块
from playwright.sync_api import sync_playwright with sync_playwright() as p:
browser = p.chromium.launch(headless=False)
page = browser.new_page()
page.goto("https://www.sojump.com/m/2792226.aspx")
page.wait_for_timeout(3000)
# 遍历所有的单选框和多选框
for radio in page.locator("//*/div[@id='divQuestion']/fieldset/div/div/div/span/input/../a").all():
radio.click()
page.wait_for_timeout(2000)
# page.pause()
browser.close()
2.5运行代码
1.运行代码,右键Run'Test',控制台输出,如下图所示:

2.运行代码后电脑端的浏览器的动作。如下图所示:

3.小结
今天其实就是对前边单选和多选循环的一次总结和实践。其他的也没有新的东西。好了,今天时间也不早了,宏哥就讲解和分享到这里,感谢您耐心的阅读,希望对您有所帮助。
《最新出炉》系列初窥篇-Python+Playwright自动化测试-27-处理单选和多选按钮-番外篇的更多相关文章
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (II)
#3使用html+css+js制作网页 番外篇 使用python flask 框架 II第二部 0. 本系列教程 1. 登录功能准备 a.python中操控mysql b. 安装数据库 c.安装mys ...
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (I)
#3使用html+css+js制作网页 番外篇 使用python flask 框架(I 第一部) 0. 本系列教程 1. 准备 a.python b. flask c. flask 环境安装 d. f ...
- #3使用html+css+js制作网页 番外篇 制作接收php
使用html+css+js制作网页 番外篇 制作接收php 本系列链接 基础 php语法 例子 本系列链接 #1使用html+css+js制作网站教程 准备 #2使用html+css+js制作网站教程 ...
- [uboot] (番外篇)uboot之fdt介绍
http://blog.csdn.net/ooonebook/article/details/53206623 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...
- [uboot] (番外篇)uboot串口&console&stdio设备工作流程 (转)
[uboot] uboot流程系列:[project X] tiny210(s5pv210)上电启动流程(BL0-BL2)[project X] tiny210(s5pv210)从存储设备加载代码到D ...
- [uboot] (番外篇)uboot之fdt介绍 (转)
以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为例 [uboot] uboot流程系列:[project X] tiny210(s5pv210)上电启动流程(B ...
- 《手把手教你》系列基础篇(八十)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试-番外篇(详解教程)
1.简介 经过前边几篇知识点的介绍,今天宏哥就在实际测试中应用一下前边所学的依赖测试.这一篇主要介绍在TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题.如果不用de ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- python自动化测试应用-番外篇--接口测试1
篇1 book-python-auto-test-番外篇--接口测试1 --lamecho辣么丑 1.1概要 大家好! 我是lamecho(辣么丑),至今<安卓a ...
- python自动化测试应用-番外篇--接口测试2
篇2 book-python-auto-test-番外篇--接口测试2 --lamecho辣么丑 大家好! 我是lamecho(辣么丑),今天将继续上一篇python接 ...
随机推荐
- 文件系统:ext4 的 block 分布(1G分区为例)
总的block数量:262144 $ dumpe2fs /dev/vg01/test | grep "Block count" dumpe2fs 1.42.9 (28-Dec-20 ...
- asp.net core之Options
本文将介绍 ASP.NET Core 中的 Options 概念和使用方法.Options 是一种配置管理机制,可以将应用程序的配置信息从代码中分离出来,提高代码的可维护性和可测试性.我们将详细介绍如 ...
- 关于 ModelScope 的视频 “AI 换脸” 优化方案
前言 前面一文,初步完成了一下 "AI 换脸" 视频处理程序.完成了视频拆帧,拆帧图片人脸融合,已经音频提取和最后的人脸融合图片的整合(也就是将图片和音频组成视频).但是在人脸融合 ...
- 从一道面试题来谈谈Golang中的 ==
写这篇文章的时候,已经离我找工作有一段时间了,但是觉得这道题不管是面试还是日常的工作中,都会经常遇到,所以还是特意写一篇文章,记录下自己对Golang中==的理解.如文章中出现不对的地方,请不吝赐教, ...
- msfvenom参数简介
-p, –payload < payload> 指定需要使用的payload(攻击荷载).也可以使用自定义payload,几乎是支持全平台的 -l, –list [module_type] ...
- 应用性能监控工具(pinpoint)部署
Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控.方法执行详情查看.应用状态信息监控等功能.pinpoint使用HBASE储存数据. 下面介绍pinpoint部署及应用. 1. 安装 ...
- spring-mvc 系列:注解开发(SpringMVCConfig、SpringConfig、AbstractAnnotationConfigDispatcherServletInitializer详细配置)
目录 一.创建初始化类,代替web.xml 二.创建SpringConfig配置类,代替Spring的配置文件 三.创建SpringMVC配置类,代替SpringMVC的配置文件 四.测试功能 使用配 ...
- API接口获取快手商品详情(封装代码)
快手是中国最大的短视频平台之一,也是许多电商企业进行推广的重要渠道.为了更好地了解快手的商品信息,我们可以通过API接口来获取商品详情. 首先,我们需要了解快手API接口和相应的文档 接下来,我们需要 ...
- springboot项目自动关闭进程重启脚本
话不多说,先上脚本 kill -15 $(netstat -nlp | grep :9095 | awk '{print $7}' | awk -F"/" '{ print $1 ...
- Solution -「THUPC 2019」Duckchess
Description Link. 大模拟是不可能给你概括题意的. Solution (据说鸭棋题解用这个标题很吉利)(这里是被点名批评的 长度 19k 的打法)(先说好代码里 Chinglish 满 ...