robot framework学习笔记2
声明:本笔记都只是自己根据大牛虫师的robot系列文档学习记录的,学习的话还请移步虫师博客:https://www.cnblogs.com/fnng/非常感谢大牛的分享,带小白一步一步入门
F5:弹出帮助文档。search term:搜索关键字; source:选择相关库
测试项目与测试套件关系:
用例(test case)只能创建在file类型的测试套件(test suite)中
一、常用关键字:
1、“Set variable”:用它来定义变量
2、“Catenate”:连接多个对象,加上“SEPARATOR=”可以对多个连接的信息进行分割。
3、“Creat list”:定义列表 ,如果通过“@{}”去定义列表的话,可以通过“log many”关键字进行打印
4、“get time”“:获取当前时间 “sleep”:休眠时间
5、“run keyword if”:编写if分支语句
6、":FOR":定义for循环 "IN RANGE":用于指定循环的范围
遍历列表,通过":FOR"循环来遍历@{abc},“@{}”用来存放列表
"ExitFor Loop If":通过这个关键字进行for循环内的判断,满足ExitFor Loop If条件后,循环结束
7、“Evaluate”:通过它可以使用Python语言中提供的方法。比如:生成随机数,调用random模块下的randint()方法。
8、导入库:“Import Library”等于Python语言中的“import”,导入标准和第三方模块或框架
9、要定义数据类型可使用“Evaluate”,如下图:将4和5定义为int型
10、注释:“Comment”关键字用于设置脚本中的注释,也可以使用“#”号来注释
二、库介绍:
1、Screenshot库:是Robot Framework的标准库,但默认不会加载,需手动加载这个库
2、屏幕截图关键字:“Take Screenshot”
3、Collections库:也是Robot Framework的标准库,提供的关键字主要用于列表、索引、字典的处理,也是需要手动加载
4、创建字典关键字:“Create Dictionary”,字典的存放方式是key:value成对存放的
“Get Dictionary Keys”:获取字典中的key值
"Get Dictionary Items":获取字典中的索引key和value值
"Get Dictionary Values":获取字典中的value值
"Get From Dictionary":获取字典中指定的key对应的value值
三、RIDE面板介绍
1、Edit:导入库、导入外部资源、定义变量(公共)、定义列表变量、定义字典等
2、Test Edit:文本文档,查看Edit中的信息展示
3、Run:
- 1、Execution Profile:运行方式,默认使用pybot来运行;custom script是自定义脚本;jybot需要安装Jython的支持
- 2、Autosave:自动保存
- 3、Arguments:pybot的参数(或者jybot)
- 4、only run Tests with these tags:只运行这些标记的测试案例 ;skip...:跳过
4、setting-Documentation:用于描述用例的一个文本
TimeOut:设置用例超时时间
Template:指定模板使用的关键字
Tags:给用例打标签
5、用户关键字(User Keyword):在测试套件下创建的用户关键字与用例平级,可以直接使用,多个变量之间用“|”隔开
6、创建资源(resource):资源文件中存放通用性的用户关键字,在测试项目下创建的资源给测试套件中使用的时候需要先导入
四、扩展库Selenium2Library
selenium是非常流行的开源web自动化测试工具,用于web应用程序的自动化测试,支持所有基于web的管理任务自动化
1、Selenium2Library 库安装:pip install robotframework-selenium2library,安装完导入即可
如图:
备注:当一个关键字在两个库中都存在时,使用的时候带着库名就不会报错;蓝色表示该关键字存在,后面红色框表示参数必填;选中关键字点“Ctrl”可查看该关键字使用方法;不填浏览器类型的话默认是firefox
2、元素定位:
- id和name定位:这两种方法简单实用,id和name要使用需在当前页面该属性唯一
- Input Text是用于输入框的关键字;click button是点击按钮的关键字,如下图:
- xpath定位:通过html的层级关系找到元素,xpath的定位方法网上有很多
- CSS定位:使用的选择器为页面元素绑定属性,可灵活选择控件的任意属性。
3、Selenium2Library关键字:
- 1、Open Browser:打开浏览器;需要装相应浏览器驱动,驱动应与自己浏览器版本对应
- 2、Close Browser:关闭浏览器 ;Close All Browser:关闭所有浏览器
- 3、Maximize Browser Window:浏览器最大化
- 4、Set Window Size:设置浏览器宽和高; Get Window Size:获取浏览器宽和高
- 5、Click Element:点击页面上的元素,如按钮、文字、图片、链接、复选框、下拉框等
- 6、Wait Until Page Contains Element:等待页面上的元素显示出来
- 7、Get Title:获取标题
- 8、Get Text:获取元素的文本信息
- 9、Get Element Attribute:获取元素的属性值;如 id=kw@name 表示id=kw这个元素的属性
- 10、cookiec处理:
- 11、should contain:验证如果 item1 不包含 item2 一次或多次,那么失败
- 12、Select Frame:进入表单,后面跟要进入的表单定位;Unselect Frame:退出表单
- 13、Unselect From List By Value:下拉框选择,后面跟下拉框定位和下拉框中的属性值
- 14、Execute Javascript:用于调用JavaScript代码
如下图:自己用了几个关键字来执行: