Robot Framework(一)
一. 定义
Robot Framework是一款python编写的功能自动化测试框架,具有良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行
二. Robot Framework特点
1. 开源的,不解释
2. 基于Python2.7版本开发
3. 编写用例简单方便,可以用txt,tsv或html等格式编写用例
4. 支持关键字驱动、数据驱动和行为驱动
5. 利用已有的关键字(关键字相当于python中的函数),测试人员可以创建自己的关键字,形成更高级的行为
6. 可以像编程一样写测试用例,支持变量使用,可以使用IF语句和FOR循环语句
7. 丰富的开源测试库
8. 灵活、可扩展,可自己扩展测试库
三. RF—几大概念
Settings:
设置项。包括导入库、导入资源、导入变量文件、设置变量、设置setup,teardown等
Librarys:
库,即我们python中常说的库。提供了一系列关键字
Keywords:
关键字:即提供特定功能的函数,包括系统关键字和用户关键字
Resources:
资源:用户关键字的集合(资源相当于python中的py模块)
Variables:
RF语法中的变量:单变量值和列表
TestCases/TestSuite
四. 关键字:keyword
关键字实际上就是函数,实现了特定功能
关键字名称中的空格就是函数名称中下划线
关键字查找:按F5或者点击菜单栏为"K"的按钮
关键字keyword | python函数 |
关键字名称 | 函数名称 |
来源:内置/库/用户自定义 | 来源:模块/包/用户自定义 |
入参 | 入参 |
有返回值,无则为None | 有返回值,无则为None |
关键字使用注意:
关键字为蓝色,表示关键字存在并能正常使用
关键字为黑色,则表示关键字不能正常使用
五. python RF的安装命令
pip3 install RobotFramework
六. RF+eclipse安装步骤(ride只支持python2.7, eclipse支持python2.7+3.X, AutoItLibrary只支持python2.X)
1. 安装eclipse
eclipse的版本:Mars要求4.5及以上
Jdk版本:要求1.8 64位
将eclipse解压即可。双击eclipse.exe打开。首次打开会提示工作目录的设置。选C盘以外的盘符下的目录
1.1 eclipse中修改文件编码格式为utf-8:
windows - preferences - general - workspace
2 安装RED插件 - 从zip包安装
说明:下载链接中提供的eclipse版本为Mars 4.5。对应的RED插件为0.8.0
Help - Install New Software - 点击Add添加
勾选 Robot Framework IDE. 点击Next
一直到安装完成。
中间有其它要选择的步骤,一直选next就好
3. 设置
安装完成之后,需要配置一些选项。
3.1 python版本选择:
windows - preference - RobotFramework - Installed frameworks
默认会使用环境变量中配置的python版本。如果要更换成别的python版本,点击Add按钮,添加新的python目录(robotframework装在哪个python版本下面,就选择哪个python版本)。如下图所示:
3.2配置RF标识,关键字,变量的自动补全。
windows - preference - RobotFramework - Editor - Content Assitant
加上如下内容:
.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$@&*:
配置完成之后,可以开始在Eclipse中编写RF脚本了
七. 开始一个demo
1. eclipse默认窗口视图是Java EE,点击左上角窗口图标,选择Robot,点击OK
2. 新建一个RF工程,点击File—New—Other,点击Robot Project
3. 工程命名
4. 创建测试套件,点击工程右键—New—Robot Test Suite
5. 建议使用.robot作为文件后缀,为了防止txt格式有时候给转成了txt文件,不方便编辑内容
6. RF的标准库,除了BuiltIn不需要引入,可以直接使用外,其他库都需要引入
其中BuiltIn内置库所在路径为:D:\Program\python34\Lib\site-packages\robot\libraries\BuiltIn.py
7. RF的四大区域:在空白处输入 * 可以看到
8. 调用关键字,写测试用例
9. 运行
10. 运行后发现乱码,可点击Run—Run Configurations
在弹出的窗口中选择Common—Other,输入gbk,点击Run
已经重新运行了一次,发现乱码没了
11. 如果Console旁边没有Message Log等,可通过Window—Show View来添加
注意:所有的工程、目录都认为是suite
Robot Framework(一)的更多相关文章
- Robot Framework用户手册 (版本:3.0)
版权信息:诺基亚网络和解决中心 本翻译尊重原协议,仅用于个人学习使用 1.开始: 1.1 介绍: Robot Framework是一个基于Python的,为终端测试和验收驱动开发(ATDD)的可扩展的 ...
- RIDE -- Robot Framework setup
RobotFramework 是一款基于python 的可以实现关键字驱动和数据驱动并能够生成比较漂亮的测试报告的一款测试框架 这里使用的环境是 python-2.7.10.amd64.msi RID ...
- Robot Framework自动化测试 ---视频与教程免费分享
当我第一次使用Robot Framework时,我是拒绝的.我跟老大说,我拒绝其实对于习惯了代码的自由,所以讨厌这种“填表格”式的脚本.老大说,Robot Framework使用简单,类库丰富,还可以 ...
- Robot Framework 的安装和配置(转载)
Robot Framework 的安装和配置 在使用 RF(Rebot framework)的时候需要 Python 或 Jython 环境,具体可根据自己的需求来确定.本文以在有 Python 的环 ...
- 解决从jenkins打开robot framework报告会提示‘Opening Robot Framework log failed ’的问题
最新的jenkins打开jenkins robot framework报告会提示如下 Verify that you have JavaScript enabled in your browser. ...
- 在centos7中安装Robot Framework
安装前景介绍: 最初,我们是在Windows环境下搭建Robot Framework来对我们的服务进行接口测试的(想知道如何在Windows下安装Robot Framework,可以参考我同事的博客h ...
- 移动端自动化环境搭建-Robot Framework的安装
A.安装依赖 RF框架,robotframework本身. B.安装过程 可以通过下载 exe 程序进行安装,Robot Framework 分别提供了,win-amd64.exe 和 win32.e ...
- robot framework 安装配置
robot framework 是一款专门用作自动化测试的框架,提供了丰富的内置库,与第三方库,也支持用户自己编写的库,robot framework +library 可以 用来做ui的自动化测试, ...
- Robot Framework入门学习1 安装部署详解
安装注意: 目前Robot framework-ride不支持python3,安装时请下载python2.7版本. Robot Framework安装时出现了一点小问题,网上没有找到直接的介绍,现将安 ...
- Robot Framework自动化测试(七)--- jybot模式
虽然,很久不用关于Robot Framework框架了,但我这里应该是除了@齐涛-道长之外分享Robot Framework 相关资料比较多的地方了.所以,常常被问到一些关于该框架的问题. 虽然,我一 ...
随机推荐
- c++相关知识
0.C语言基础知识及系统相关:http://c.biancheng.net/cpp/u/jiaocheng/ 1.C++ include观点与机制:http://developer.51cto.com ...
- elastic search远程测试
elastic search远程测试 推荐:elastic官方教程:https://www.elastic.co/guide/en/elasticsearch/reference/6.2/index. ...
- git 设置 .gitignore 为全局global + 配置.gitignore为全局后不生效解决办法
outline 什么是 .gitignore 以及 .gitignore 的作用,这里不做赘述,自行网上查阅. 设置 .gitignore 为全局生效 懒得自己逐行敲忽略规则的话,建议移步:https ...
- Django组件 - Django请求生命周期、中间件
一.Django请求生命周期 在学习中间件之前,先了解一下Django的请求生命周期,如下图: 1)client代表浏览器,浏览器内部为我们封装了socket,Django的WSGI模块也封装了soc ...
- Python高级教程-生成器
生成器(Generator) 通过列表生成式,可以直接创建一个列表.但是,受内存限制,列表的容量肯定是有限的.而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几 ...
- Thymeleaf添加页面模板
在页面编辑中,有一些公共的页面部分(比如header,footer等)可以抽取出来放到模板中,其他页面使用的时候可以调取该模板,这样的好处是如果修改这些公共部分,只修改模板中的代码即可. 为了做到这一 ...
- python删除所有的中文字符、非ASCII或非英文字符,检查字符串是否包含非ASCII
Your ''.join() expression is filtering, removing anything non-ASCII; you could use a conditional exp ...
- phpcms 列表页中,如何调用其下的所有子栏目?
{pc:content action="category" catid="$catid" num="99" order="list ...
- web前端编码规范
简要介绍 本文通过参考百度腾讯等前端编码规范(链接建文末),得出个人习惯的编码规范.个人编码规范采用在不影响可读性的情况下能省就省,尽量简洁,不需要就直接去掉. 最佳原则不管是个人编码规范还是团队编码 ...
- Linux查看系统信息及系统性能检测命令
查看系统信息: ~# uname -a (Linux查看版本当前操作系统内核信息)Linux iZ23onhpqvwZ 3.13.0-30-generic #54-Ubuntu SMP Mon Jun ...