RF自动化测试
1.自动化分层:UI层实现界面自动化,Service层实现接口自动化,Unit层实现单元测试.
2.UI自动化测试常见的工具有:QTP,AutoIt,Selenium.Selenium是做Web测试最全面的工具支持浏览器全面,又模拟在浏览器中的操作.
3.单元测试全覆盖,接口测试覆盖大部分流程,界面自动化保证主流程即可
4.RF是通用的测试框架:采用表格语法易使用;可使用关键字驱动,数据驱动和行为驱动;可利用现有关键字组合新关键字;可用Python或Java扩展;
5.安装Python27,Setuptools,RF,wxPython,RF-RIDE
6.New Project-->New Test Suite-->New Test Case
7.Report主要是概括性的报告,总体案例的执行情况.Log则是更为详细的案例步骤报告.
8.Sava保存当前焦点所在文件,Save All保存全部
9.F5:Search Keywords
10.Library加载测试库,默认Python\Lib\site-packages目录下的文件;Resource加载资源,主要是工程相关的资源文件;Variables加载变量文件;Add Scalar定义变量;Add List定义列表型变量.
11.Suite Setup测试套件的初始化文件,Suite Teardown测试套件的收尾文件;Test Setup测试用例初始化,Test Teardown测试用例收尾
12.Project和Suite:二者都可建User Keyword, Scalar, List Variable.Project可建Suite, Directory, Resource;Suite可建Test Case
13.Suite前面多*表示有修改尚未保存
14.Project和最顶层的Test Suite是相通的,可是File也可是Directory.目录型的Test Suite可包含File型的Test Suite或嵌套Directory型的Test Suite.但Test Case只能在File Test Suite下
15.通常Test Suite里添加Resource, Resource中添加Library
16.Import中的Library是红色的说明导入失败,黑色表示导入成功
17.RF内置库在Python\Lib\site-packages\robot\libraries目录中
18.Resource主要用来存放用户关键字,Resource下添加User Keyword
19.External Resource主要指还在Project管辖范围的Resource文件
20.变量:${Var}单个变量,@{listVar}List型变量,&{dictVar}是RF2.9的Dictionary变量
21.Set Global Variable:设定全局变量,该变量在所有的Test Suite和Test Case中都有效;Set Suite Variable:设定File Suite级变量,该变量只在当前的File Suite内有效;Set Test Variable:设定Case级变量,只在当前Case有效
22.环境变量的标识符为%, eg: log %{PATH},RF中只能使用环境变量,不能修改
23.特殊字符串常量:${/},${:},${EMPTY},,${False},${None},${null},${SPACE},${True}
24.RF中的变量都是字符串型的,字符串拼接不需要用+连接,abcd${var}efgh==abcdABCDefgh
25.创建Scalar变量:${var} Set Variable 'ABCD';创建List变量:@{listVar} Create List 1 2 3
26.Run Keyword If '${var}'=='ABCD' log 'HAHAHAHA'
27.变量支持索引和截取:${var[2]}或${var[0:2]}
28.Evaluate将后面的表达式放在python中运行
29.List型变量的获取:@{listVar}[index]或${listVar[index]}
30.对象变量:假设${return}是Request库中测试接口返回的对象,对象状态就是${return.STATUS},对象内容就是${return.CONTENT}
31分支:
Run Keyword If con1 do action1
... ELSE IF con2 do action2(...是必须的)
... ELSE do actionN
32.RF标准库:
Builtin,Collections(处理Python字典和列表), OperatingSystem(操作系统相关), String(字符串处理), XML, DateTime(日期时间转换), Telnet, Process, Screenshot, Remote(远程库)
常用第三方库:
Selenium2Library, HTTPLibrary, SSHLibrary, FTPLibrary, requestLibrary, DatabaseLibrary, cx_Oracle, PyMysql, JSONLibrary
log ${var}
log many @{listVar}
RF自动化测试的更多相关文章
- 多测师讲解RF自动化测试实现流程_高级讲师肖sir
1.环境搭建过程?整套环境需要哪些工具包,以及工具包的作用?因为我搭建的RF框架是基于Python的,所以肯定要先安装Python,python安装完之后,开始安装自动化测试框架rf3.0-在do ...
- Robot Framework--11 RF结合Jenkins
转自:http://blog.csdn.net/tulituqi/article/details/17846463 为什么我们要引入RF?其实最初我们引入RF是为了能够快速的开展自动化验收测试,为敏捷 ...
- RF+Jenkins构建持续集成
引入RF是为了能够快速的开展自动化验收测试,Jenkins而一种持续集成工具,用于监控持续重复的工作,持续的软件版本发布/测试项目,而通过RF+Jenkins可以有利的对RF构建的接口项目进行持续集成 ...
- RobotFrameWork Web自动化测试环境搭建
前言 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收 ...
- jenkins与rebotframework搭配
一.下载Jenkins 下载地址:http://mirrors.jenkins-ci.org/ 贫道比较推荐下载war包的,进入上面的地址,页面里有war的链接,各种类型各种版本的release,大家 ...
- Jenkins Robot framework 持续集成环境搭建
为什么我们要引入RF?其实最初我们引入RF是为了能够快速的开展自动化验收测试,为敏捷保驾护航.这其中有个重要的工具Jenkins,同时也是应群里朋友们的要求,这次就来介绍一下RF如何快速便捷的结合Je ...
- 基于Python3.7 Robot Framework自动化框架搭建
一.Robot Framework 和 Selenium 的区别(面试常问) 主流自动化测试框架有Robot Framework 和 Selenium,请根据实际场景选用不同的框架,以下总结各自优缺点 ...
- RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难
消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...
- 安卓自动化测试——rf
${a} Get Text //android.widget.TextView[contains(@text,"历史位置")]/../../../android.widget.Li ...
随机推荐
- python_11 装饰器,闭包
装饰器:本质就是函数,功能是为其他函数添加附加功能 原则: 1.不修改被修饰函数的源代码 2.不修改被修饰函数的调用方式 装饰器的知识储备 装饰器=高阶函数+函数嵌套+闭包 #装饰器: def tim ...
- Servlet学习记录2
读取web.xml参数 上篇文章ImageServlet里只设置了JPG,GIF,DOC类型文件的Content-Type.如果这时候需求变化了,需要增加Excel文件格式的Content-Type, ...
- Java学习--枚举
枚举类型enum,地位等同于class,interface 使用enum定义的枚举类型,也是一种变量类型,可用于声明变量 枚举的一些特征 1.它不能有public的构造函数,这样做可以保证客户代码没有 ...
- 在Ubuntu上升级SQLite,并让Python使用新版SQLite
(本文适用于Debian系的Linux,如Ubuntu.Raspbian等等.) 在Linux上,Python的sqlite3模块使用系统自带的SQLite引擎,然而系统自带的SQLite可能版本太老 ...
- 针对Oracle数据库中SCOTT方案的多表查询的一个例子
查询出每个员工的姓名.职位.月薪.所属部门名.月薪等级及其领导的姓名.职位.所属部门名.月薪等级.select e.ename 员工姓名,e.job 员工职位,e.sal 员工月薪,d.dname 员 ...
- html 自定义上传图片样式,并回显
<div id="photoUpLoad"> <input type="file" id="photo" name=&qu ...
- <web-view>中JSSDK
如果只是使用wx.miniProgram.navigateTo这种导航的接口,jssdk可以不用做配置,引用js后直接使用就行,如果chooseImage这种,就需要获取配置了,步骤如下: 先在后端通 ...
- Mybateis mapper 接口 example 用法
注意:希望通过此篇文章分享 可以使大家对mapper接口以及example 用法更加深入理解 MyBatis的Mapper接口以及Example的实例函数及详解 一.mapper接口中的方法解析 ma ...
- python词频统计及其效能分析
1) 博客开头给出自己的基本信息,格式建议如下: 学号2017****7128 姓名:肖文秀 词频统计及其效能分析仓库:https://gitee.com/aichenxi/word_frequenc ...
- 51-迷宫(一)- java版dfs和bfs
一天蒜头君掉进了一个迷宫里面,蒜头君想逃出去,可怜的蒜头君连迷宫是否有能逃出去的路都不知道. 看在蒜头君这么可怜的份上,就请聪明的你告诉蒜头君是否有可以逃出去的路. 输入格式 第一行输入两个整数 nn ...