robotframework自动化系列:随机下拉框
robotframework自动化系列:随机下拉框
随着项目自动化不断推进,在下拉框定位的时候出现些问题,每次下拉框选择都是相同的下拉选项,如果想每次选择的选项不一样,该如何实现呢,查找了很多资料,没有找到一个好的解决方法....
最后看到一篇文章,想到可以用随机数尝试一下
项目中的下拉框源码如图
<select class="form-control m-b" name="organization.server_type"> <option value="1">机构</option> <option value="2">社区</option> <option value="3">酒店</option> </select>
而下拉框定位的方法,如图
销售类型 [Arguments] ${sale_pattern} #销售类型选择 select from list xpath = .//*[@id='organizationForm']/div/div[1]/div[3]/div/select 租赁 Comment select from list by value organization.sale_pattern 1 Comment ${sale_pattern} evaluate random.randint(1,2) random Comment select from list by value organization.sale_pattern ${sale_pattern}
这样定位的弊端,如果类型改变每次都需要修改,而且每次运行用例选中的类型是一样的,不能确定其他类型是否正确输入和显示。
需要实现的思路是:每次运行测试用例,可以根据随机数自动选中其中某个下拉选项,这样对用例执行而言,能够保证用例的健壮性。
而robotframework的关键字evaluate可以得到一个随机数,修改销售类型的关键字,修改如下:
随机销售模式 #销售模式随机 ${sale_pattern} evaluate random.randint(1,2) random select from list by value organization.sale_pattern ${sale_pattern}
如图:
但是用例执行后的结果出错了,截图所示
提示信息说明用例中的select from list by value中的值的字符类型错误...
在robotframework中convert to string实现字符的转换,代码如下
${sale_pattern_temp} evaluate random.randint(0,1) random ${sale_pattern} Convert To String ${sale_pattern_temp} Comment select from list by value organization.sale_pattern 2 Comment select from list by value organization.sale_pattern ${sale_pattern} select from list by index organization.sale_pattern ${sale_pattern}
代码如图
再次运行此用例,终于成功,(^o^)/~
截图
这样修改后,每次下拉框都会选择不同的选项了,(^o^)/~
robotframework自动化系列:随机下拉框的更多相关文章
- robotframework文本类型的下拉框
对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...
- easyui系列一 下拉框之组合框combobox
一.基础组合框 示例 <select class="easyui-combobox" name="state" style="width:200 ...
- robotframework自动化系列:文本类型的下拉框
对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...
- robotframework 随机选中下拉框中的值
示例脚本: click element id=provinceName #点击地区 省 wait until element is enabled xpath=.//*[@id='provinceNa ...
- 《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)
1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select ...
- Selenium2+python自动化15-select下拉框
前言 最近由于工作原因,更新慢了一点,今天终于抽出一点时间给大家继续更新selenium系列,学习的脚本不能停止,希望小伙伴能多多支持. 本篇以百度设置下拉选项框为案例,详细介绍select下拉框相关 ...
- selenium如何随机选取省份和城市的下拉框的值
1.原始需求,选择省份后,相应的城市会自动加载 2.思路 a.获取下拉框的所有元素个数 b.随机点击0-元素个数之间的某个值 3.代码实现 Random random = new Random(); ...
- 高仿QQ即时聊天软件开发系列之三登录窗口用户选择下拉框
上一篇高仿QQ即时聊天软件开发系列之二登录窗口界面写了一个大概的布局和原理 这一篇详细说下拉框的实现原理 先上最终效果图 一开始其实只是想给下拉框加一个placeholder效果,让下拉框在未选择未输 ...
- selenium自动化实例: 多层框架中关于iframe的定位,以及select下拉框选择
对于一个自动化的初学者来说会很常见的遇到元素明明存在却始终定位不到, 从而导致脚本报错,当然定位不到元素的原因很多, 其中一种就是多层框架iframe导致的 下方截图示意: 下方为写脚本时候的示例并其 ...
随机推荐
- 第6章 Overlapped I/O, 在你身后变戏法 ---Win32 文件操作函数 -2
Win32 之中有三个基本的函数用来执行 I/O,它们是: i CreateFile() i ReadFile() i WriteFile() 没有另外 ...
- netty4.x 传输文件
一:简介 netty传输文件的例子并不多,当前的项目刚才需要使用netty,所以就记录一下使用方法,使用netty传输文件,首先需要启动一个服务端,等待服务端请求监听,然后传输文件的时候,启动一个客户 ...
- 【Revit API】梁构件支座检查算法
一.前言 应该是第二次写关于Revit API的博文了.虽然在BIM企业中工作,从事桌面BIM软件开发,但是我是不怎么喜欢写Revit API相关的代码.平时更多的是在写界面展示,架构 ...
- 使用Xshell+Xmanager远程监控jvisualvm
使用jvisualvm的remote方式监控服务器端jvisualvm时,不是很方便,因此通过local方式,应该是正路. 一.服务器端(Linux,最小安装模式,没有图形界面) 1.安装xauth ...
- php中常用的字符串截取函数mb_substr实例解释
string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_ ...
- 记录一下从懵懂到理解RESTful的过程
前言 Spring+SpringMVC+MyBatis+easyUI整合进阶篇(一)设计一套好的RESTful API Spring+SpringMVC+MyBatis+easyUI整合进阶篇(二)R ...
- C#之基础
引子:C#是.NET平台所支持的多种语言中的一门编程语言,它是一门面向对象编程语言.面向对象语言的三大基本特性是:封装.继承.多态.学过C#的人肯定都知道,C#和Java极其相似.我已经学过C语言,现 ...
- Node.js学习之TCP/IP数据通讯
Node.js学习之TCP/IP数据通讯 1.使用net模块实现基于TCP的数据通讯 提供了一个net模块,专用于实现TCP服务器与TCP客户端之间的通信 1.1创建TCP服务器 在Node.js利用 ...
- 57、Bootstrap中文文档
给大家介绍一个前端框架让你从此写起前端代码与之先前相比如有神助般的效果拉就是Bootstrap. 一.Bootstrap的下载 Bootstrap,由Twitter的设计师Mark Otto和Jaco ...
- Java面向对象 线程技术 -- 下篇
Java面向对象 线程技术 -- 下篇 知识概要: (1)线程间的通信 生产者 - 消费者 (2)生产者消费者案例优化 (3)守护线程 (4)停止线 ...