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 相关资料比较多的地方了.所以,常常被问到一些关于该框架的问题. 虽然,我一 ...
随机推荐
- Java 集合框架查阅技巧
如何记录每一个容器的结构和所属体系呢? List ArrayList LinkedList Set HashSet TreeSet 其中,后缀名就是该集合所属的体系,前缀名就是该集合的数据结构. 看到 ...
- Redis配置文件的使用
Redis基本配置 常规配置 进到配置文件下 vi /etc/redis.conf 写入配置项 port 1111 # 配置端口号 daemonize yes # 是否后台运行 daemonize y ...
- Django框架视图类
类视图 在写视图的时候,Django除了使用函数作为视图,也可以使用类作为视图.使用类视图可以使用类的一些特性,比如继承等. View django.views.generic.base.View是主 ...
- mysql内置数据库
1 mysql本地连接数据库 >mysql -h localhost -u root -proot 注意-p后面没有空格,是直接跟上密码 或者 >mysql -h localhost ...
- HTML中的SEO和HTML语义化
SEO 1) <title>网站SEO标题</title>, 百度搜索出来的记录, 其标题基本就提取至网站的title, 标签, 因此标题起的好, 不论对点击率还是SEO都至关 ...
- Django基础一
Django基础一 Web框架本质 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演 ...
- Nodejs学习计划
此文章已经发表于本人博客. 由于公司要求这段时间在学习Nodejs,基本靠自摸一路走来踩了很多坑浪费很多时间,今天就来这里说下,顺便计划一下接下来的学习计划,目前自己做个博客,项目过程中学习了js类以 ...
- SqlHelper简单实现(通过Expression和反射)8.Sql Server数据处理类
这个类基本上就是调用EntityHelper,ExpressionHelper和ObjectHelper来进行各种完整SQL的拼接操作. using System; using System.Conf ...
- java发送http请求和多线程
0 概述 在写app后台的时候,需要调用另一个服务器上的算法服务,所以需要发送http请求来获取结果. 考虑到一个功能(比如智能中医)需要调用好几个接口(人脸识别,舌苔识别,饮食推荐),大部分时间花在 ...
- $python正则表达式系列(6)——"或"表达式的用法
import re s1 = u'距离地铁5号线189米' s2 = u'距离地铁5号线(环中线)189米' s3 = u'距离地铁5号线(环中线)189米' p1 = re.compile(u'号线 ...