robot framework基础知识
1、robot framework
robot framework自动化测试框架(简称:RF框架)是一个基于python的,通过selenium二次封装后得到selenium2library第三方库,通过封装以后的关键字驱动的测试框架。
- 基于python,就是用python开发的框架
- 关键字驱动测试:关键字驱动页面元素,关键字测试也称为表格驱动测试
- 自动化框架,在自动化中,通过加装不同的第三方库来做不同的自动化测试
2、常见的几种测试框架
- robot framework + selenium2library :是一款python编写的功能自动化测试框架
- python + selenium selenium做自动化要求会语言,写代码,selenium支持多语言,方便,扩展性高,开源版。
- qtp:前几年流行
3、rf工作原理
rf是开源,通过加装第三方库组成的测试环境,webdriver通过原生的api进行封装来操作浏览器,使用具体的关键字操作网页上的元素。
总结:使用底层代码封装成关键字通过webdriver去驱动页面元素,实现ui自动化
4、rf安装过程
- pip install robotframework==3.1.2 -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
- pip install robotframework-ride -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
- pip install robotframework-selenium2library -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
- pip install robotframework-databaselibrary -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
5、rf中元素定位
id定位
name定位
class定位
xpath定位
css定位
js定位

变量
全局变量:$ { } log 打印全局变量

列表变量:@{ } log many 打印列表变量

字典变量:& { } log many 打印字典变量

常用关键字
reload page
刷新当前页面

go to
跳转新的url

go back
返回上一步

input text 输入

input password

click button

click elemet

click link

get title

switch browser

1、通过索引切换浏览器
Open Browser http://discuz.e70w.com/ gc
sleep 2 #休眠
Maximize Browser Window #窗口最大化
Open Browser https://www.baidu.com/ gc
sleep 2
${title} get title
log ${title}
input text id=kw dcs
Switch Browser 1
${title1} get title
log ${title1}
2、通过句柄切换窗口

3、通过别名切换浏览器

下拉框:select from list by index或 value 或label

iframe
进入框语句:select frame
退出框语句:unselect frame
案例:京东iframe框

鼠标悬停 mouse ove

弹框handle alert

get title 和 title should be


关闭浏览器和关闭和窗口
1、close browsers 关闭当前浏览器
2、close all browsers 关闭所有浏览器
3、close window 关闭当前窗口
场景一:close browsers 关闭当前浏览器

场景二:close all browsers 关闭所有浏览器

场景三:close window 关闭当前窗口

get text和get value
滚动条
Open Browser https://www.jd.com gc
sleep 2
Maximize Browser Window
Execute Javascript window.scrollTo(0,2000)
sleep 3
Execute Javascript window.scrollTo(0,0)
get window size 获取屏幕大小
Open Browser https://www.jd.com gc
sleep 2
Maximize Browser Window
${size} get window size
log ${size}
表单操作
Open Browser file:///F:/flask_projects/dcs/ui_zidonghua/table.html gc
sleep 2
Maximize Browser Window
input text name=user shijie
Input Password name=passwd 123456
Input Password name=conpasswd 123456
Select Radio Button sex boy
sleep 2
Select Checkbox xpath=//*[@name="subject"][2]
Select Checkbox xpath=//*[@name="subject"][3]
Select From List By Label xpath=//select 北京大学
sleep 3
Click Element xpath=//*[@type="reset"]
sleep 3
Close Browser
判断关键字
robotframework实战常用判断关键字:
-
page should contain #验证页面包含内容
-
Page Should not Contain #验证页面不包含内容
-
Page Should Contain Element 页面包含元素
-
Page Should Not Contain Element 页面不包含元素
-
Wait Until page Contains 等到页面包含
-
Wait Until Page Does Not Contain 等到页面不包含
-
Wait Until Page Contains Element 等到页面包含元素
-
Wait Until Page Does Not Contain Element 等到页面不包含元素
page should contain #验证页面包含内容
包括继续运行,不包括指定内容报错


修改元素
Open Browser http://www.baidu.com gc
sleep 2
Maximize Browser Window
Assign Id To Element kw dcs
sleep 2
Input Text id=dcs 多测师

浙公网安备 33010602011771号