RobotFramework自动化4-批量操作案例【转载】
本篇转自博客:上海-悠悠
原文地址:http://www.cnblogs.com/yoyoketang/tag/robotframework/
前言
有时候一个页面上有多个对象需要操作,如果一个个去定位的话,比较繁琐,这时候就可以定位一组对象。Selenium2library提供了Get Webelements 关键字,用于定位一组元素
以百度页面为例,先定位一组对象,然后依次打开每个链接,检测返回结果。
一、定位一组对象
1.打开百度页面,定位右上角六个链接按钮
2.定位元素共同属性class=mnav
二、Get Webelements
1.在ride中找到对应关键字Get Webelements,从关键字介绍中可以看到,返回的是一个list对象
三、操作对象
1.打开浏览器
2.设置等待时间
3.获取界面上一组对象,返回给${s}
4.打开其中一个页面,然后获取title
5.用go back返回到首页
四、设置关键字
1.将上面的操作可以分为两个步骤,第一步是打开浏览器,第二步是点击某个链接
2.打开百度关键字
五、打开链接关键字
1.可以把点击的第几个元素设置为一个变量:${i}
2.把获取到的title作为返回结果,给这个关键字一个返回值:${title}
六、批量操作
1.把需要检查的结果放到一个list里
2.用for循环,循环点击操作链接
3.Should Contain断言,检查返回结果
4.最后操作完后关闭浏览器
七、最终代码
1.最终代码如下:
test010
${result} Create List 糯米 新闻 hao123 地图 视频
... 贴吧
打开百度
:FOR ${a} in range 6
\ ${title} 打开链接 ${a}
\ log ${title}
\ log ${result[${a}]}
\ Should Contain ${title} ${result[${a}]}
close all browsers
*** Keywords ***
打开链接
[Arguments] ${i}
[Timeout]
${s} Get Webelements css=.mnav
Click Element ${s[${i}]}
sleep 3
${title} Get Title
log ${title}
go back
[Teardown]
[Return] ${title}
打开百度
open browser https://www.baidu.com/
Set Browser Implicit Wait 10
RobotFramework自动化4-批量操作案例【转载】的更多相关文章
- RobotFramework自动化3-搜索案例【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/robotframework/ 前言 RF系列主要以案例为主,关键字不会的可以多按按F5 ...
- RobotFramework自动化3-搜索案例
前言 RF系列主要以案例为主,关键字不会的可以多按按F5,里面都有很详细的介绍,要是纯翻译的话,就没太大意义了,因为小编本来英语就很差哦! 前面selenium第八篇介绍过定位一组搜索结果,是拿百度搜 ...
- robotframework自动化系列:随机下拉框
robotframework自动化系列:随机下拉框 随着项目自动化不断推进,在下拉框定位的时候出现些问题,每次下拉框选择都是相同的下拉选项,如果想每次选择的选项不一样,该如何实现呢,查找了很多资料,没 ...
- 从零学习基于Python的RobotFramework自动化
从零学习基于Python的RobotFramework自动化 一. Python基础 1) 版本差异 版本 编码 语法 其他 2.X ASCII try: raise Type ...
- RobotFramework自动化1-环境搭建【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/robotframework/ 前言 Robot Framework是一款python编 ...
- RobotFramework自动化2-自定义关键字【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/robotframework/ 前言 有时候一个页面上有多个对象需要操作,如果一个个去定 ...
- RobotFramework自动化4-批量操作案例
前言 有时候一个页面上有多个对象需要操作,如果一个个去定位的话,比较繁琐,这时候就可以定位一组对象.Selenium2library提供了Get Webelements 关键字,用于定位一组元素 以百 ...
- Selenium2+python自动化10-登录案例【转载】
前言 前面几篇都是讲一些基础的定位方法,没具体的案例,小伙伴看起来比较枯燥,有不少小伙伴给小编提建议以后多出一些具体的案例.本篇就是拿部落论坛作为测试项目,写一个简单的登录测试脚本. 在写登录脚本的时 ...
- robotframework自动化系列:删除操作流程以及总结
之前已经完成了登录.新增和修改的操作流程,这一节主要说明删除操作流程以及自动化的过程中出现的问题,算是对这个项目自动化的一个总结. 删除操作流程 对于系统账号管理中删除功能,删除的测试点主要如图所示 ...
随机推荐
- Android启动屏全屏显示
1.为首页面设置一个theme <style name="app_start" > <item name="android:windowNoTitle& ...
- RegisterWindowMessage
RegisterWindowMessage function Defines a new window message that is guaranteed to be unique throug ...
- Centos 7.X 安装JDK1.8
一.查看本机jdk版本并卸载原有openjdk 查看 # java -version openjdk version "1.8.0_144" ...
- Java 多线程并发编程一览笔录
Java 多线程并发编程一览笔录 知识体系图: 1.线程是什么? 线程是进程中独立运行的子任务. 2.创建线程的方式 方式一:将类声明为 Thread 的子类.该子类应重写 Thread 类的 run ...
- 通过广播关闭应用程序(每个Activity)和连续点击两次返回键关闭应用程序
对于一个应用程序可能有很多个Activity,可能每个人并不想一个个的去关闭Activity,也有可能忘了,那怎么关闭所有的未关闭的Activity呢,其实有很多方法,但是我最喜欢的一种就是通过广播事 ...
- USACO Section1.2 Dual Palindromes 解题报告
dualpal解题报告 —— icedream61 博客园(转载请注明出处)-------------------------------------------------------------- ...
- APPIUM-----自动发现兼容的Chromedrivers
使用Appium Desired Capabilities:chromedriverExecutableDir chromeDriver所有版本下载路径:https://chromedriver.st ...
- 解决Navicat for MySQL 连接 Mysql 8.0.11 出现1251- Client does not support authentication protocol 错误
安装MySQL8.0之后,使用Navicat连接数据库,报1251错误. 上网搜索解决方案,网上说出现这种情况的原因是:mysql8 之前的版本中加密规则是mysql_native_password, ...
- Abstract Factory 抽象工厂(创建型模式)
1.常规的对象创建方法(以更换QQ空间主题为例) (这里的常规对象指的是由于业务需求,当前实例化的对象有可能被其他相似的对象(有着共同的特性)所取代,例如更换手机铃声:一首歌取代另一首歌(词,曲,和声 ...
- java IO小结
package 字符与字节转换; import java.io.*; public class char_byte { public static void main(String[] args) { ...