【学习笔记】APP页面,随机选择一个选项
如下页面,一个测评功能,30个题目,每题的答案选项一样:

要实现每题自动随机选择一个答案
方法一:定义一个5个选项的列表,循环30次,然后使用random.shuffle打乱列表顺序,根据列表元素定位第几个选项
a = ['完全同意', '同意', '不知道', '不同意', '完全不同意']
for i in range(0, 30):
random.shuffle(a)
if a[0] == "完全同意":
driver.find_element_by_xpath('//*[@text="完全同意"]').click()
if a[0] == "同意":
driver.find_element_by_xpath('//*[@text="同意"]').click()
if a[0] == "不知道":
driver.find_element_by_xpath('//*[@text="不知道"]').click()
if a[0] == "不同意":
driver.find_element_by_xpath('//*[@text="不同意"]').click()
if a[0] == "完全不同意":
driver.find_element_by_xpath('//*[@text="完全不同意"]').click()
方法二:定位到所有得元素,组成一个列表,用random.choice随机取
a = '//*[@text="完全同意"]'
b = '//*[@text="同意"]'
c = '//*[@text="不知道"]'
d = '//*[@text="不同意"]'
e = '//*[@text="完全不同意"]'
list = [a, b, c, d, e]
for i in range(0, 30):
ell = random.choice(list)
driver.find_element_by_xpath(ell).click()
方法三:成一个1-5的随机数,然后根据随机数定位第几个选项(和方法一类似)
for i in range(0, 30):
a = random.randint(1,5)
if a == 1:
driver.find_element_by_xpath('//*[@text="完全同意"]').click()
if a == 2:
driver.find_element_by_xpath('//*[@text="同意"]').click()
if a == 3:
driver.find_element_by_xpath('//*[@text="不知道"]').click()
if a == 4:
driver.find_element_by_xpath('//*[@text="不同意"]').click()
if a == 5:
driver.find_element_by_xpath('//*[@text="完全不同意"]').click()
【学习笔记】APP页面,随机选择一个选项的更多相关文章
- Java-Selenium,获取下拉框中的每个选项的值,并随机选择某个选项
今天逛51testing,看见有人问这个问题.现在以Select标签为例. 1.首先看页面中的下拉框,如图: 2.F12查看页面源代码,如下 <select class="form-c ...
- go语言,golang学习笔记4 用beego跑一个web应用
go语言,golang学习笔记4 用beego跑一个web应用 首页 - beego: 简约 & 强大并存的 Go 应用框架https://beego.me/ 更新的命令是加个 -u 参数,g ...
- [ML学习笔记] 决策树与随机森林(Decision Tree&Random Forest)
[ML学习笔记] 决策树与随机森林(Decision Tree&Random Forest) 决策树 决策树算法以树状结构表示数据分类的结果.每个决策点实现一个具有离散输出的测试函数,记为分支 ...
- OpenGL学习笔记:拾取与选择
转自:OpenGL学习笔记:拾取与选择 在开发OpenGL程序时,一个重要的问题就是互动,假设一个场景里面有很多元素,当用鼠标点击不同元素时,期待作出不同的反应,那么在OpenGL里面,是怎么知道我当 ...
- go语言,golang学习笔记2 web框架选择
go语言,golang学习笔记2 web框架选择 用什么go web框架比较好呢?能不能推荐个中文资料多的web框架呢? beego框架用的人最多,中文资料最多 首页 - beego: 简约 & ...
- 微信小程序开发:学习笔记[8]——页面跳转及传参
微信小程序开发:学习笔记[8]——页面跳转及传参 页面跳转 一个小程序拥有多个页面,我们可以通过wx.navigateTo推入一个新的页面.在首页使用2次wx.navigateTo后,页面层级会有三层 ...
- 【转】Pandas学习笔记(二)选择数据
Pandas学习笔记系列: Pandas学习笔记(一)基本介绍 Pandas学习笔记(二)选择数据 Pandas学习笔记(三)修改&添加值 Pandas学习笔记(四)处理丢失值 Pandas学 ...
- QML学习笔记(五)— 做一个简单的待做事项列表
做一个简单的QML待做事项列表,能够动态添加和删除和编辑数据 GitHub:八至 作者:狐狸家的鱼 本文链接:QML学习笔记(五)— 做一个待做事项列表 主要用到QML:ListView 效果 全部代 ...
- php array_rand()函数从数组中随机选择一个或多个元素
php使用array_rand()函数从数组中随机选择一个或多个元素的方法. 使用array_rand() 函数从数组中随机选出一个或多个元素,并返回. array_rand(array,numbe ...
随机推荐
- 安装tensorflow遇到:Your CPU supports instructions that this TensorFlow binary was not compiled to use
为了提升CPU计算速度的.若你有支持cuda的GPU,则可以忽略这个问题,因为安装SSE4.1, SSE4.2, AVX, AVX2, FMA, 仅仅提升CPU的运算速度(大概有3倍). 解决方法: ...
- java.sql.SQLException: Unknown column 'user0_.user_name' in 'field list' 报错问题
报错信息: java.sql.SQLException: Unknown column 'user0_.user_name' in 'field list'Query is: select user0 ...
- Machine Learning(Andrew Ng)学习笔记
1.监督学习(supervised learning)&非监督学习(unsupervised learning) 监督学习:处理具有若干属性且返回值不同的对象.分为回归型和分类型:回归型的返回 ...
- mongoTemplate CURD 和模糊查询(转)
此文基于Spring的MongoTemplate,介绍MongoDB比较基础常用的增删改查操作.涵盖了从集合创建.索引创建和CRUD操作到更高级的功能(如Map-Reduce和聚合)等等.不多说,直接 ...
- Linux环境下软件安装
下载——解压缩: 把得到的目录放到一个不碍事的目录,我们可以设置隐藏目录: 查看可执行程序: 如何变成系统命令? PATH:一个可执行程序只要放到这些目录中任何一个就可以,就可以变成系统识别的命令,当 ...
- cogs1355. 读书
1355. 读书 ★ 输入文件:reading.in 输出文件:reading.out 简单对比时间限制:1 s 内存限制:128 MB [题目描述] 放暑假了,CHH想趁假期提高一下 ...
- [kuangbin带你飞]专题一 简单搜索 x
A - 棋盘问题 POJ - 1321 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋 ...
- Spring Boot教程(三十六)使用MongoDB数据库(2)
快速开始使用Spring-data-mongodb 若MongoDB的安装配置采用默认端口,那么在自动配置的情况下,我们不需要做任何参数配置,就能马上连接上本地的MongoDB.下面直接使用sprin ...
- 【Nginx】 linux环境下安装nginx步骤
开始前,请确认gcc g++开发类库是否装好,默认已经安装. centos平台编译环境使用如下指令 安装make: yum -y install gcc automake autoconf libto ...
- web前端知识点反思总结
当别人问你之前的知识,我们便会勾起之前的回忆,然后进行一番痛苦的挣扎后,发现我依然记得你 什么是 DTD ? 文档类型定义 (DTD) 可定义合法的 xml 文档的构建模块 ,他是使用一系列合法的元素 ...