一. 定义

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(一)的更多相关文章

  1. Robot Framework用户手册 (版本:3.0)

    版权信息:诺基亚网络和解决中心 本翻译尊重原协议,仅用于个人学习使用 1.开始: 1.1 介绍: Robot Framework是一个基于Python的,为终端测试和验收驱动开发(ATDD)的可扩展的 ...

  2. RIDE -- Robot Framework setup

    RobotFramework 是一款基于python 的可以实现关键字驱动和数据驱动并能够生成比较漂亮的测试报告的一款测试框架 这里使用的环境是 python-2.7.10.amd64.msi RID ...

  3. Robot Framework自动化测试 ---视频与教程免费分享

    当我第一次使用Robot Framework时,我是拒绝的.我跟老大说,我拒绝其实对于习惯了代码的自由,所以讨厌这种“填表格”式的脚本.老大说,Robot Framework使用简单,类库丰富,还可以 ...

  4. Robot Framework 的安装和配置(转载)

    Robot Framework 的安装和配置 在使用 RF(Rebot framework)的时候需要 Python 或 Jython 环境,具体可根据自己的需求来确定.本文以在有 Python 的环 ...

  5. 解决从jenkins打开robot framework报告会提示‘Opening Robot Framework log failed ’的问题

    最新的jenkins打开jenkins robot framework报告会提示如下 Verify that you have JavaScript enabled in your browser.  ...

  6. 在centos7中安装Robot Framework

    安装前景介绍: 最初,我们是在Windows环境下搭建Robot Framework来对我们的服务进行接口测试的(想知道如何在Windows下安装Robot Framework,可以参考我同事的博客h ...

  7. 移动端自动化环境搭建-Robot Framework的安装

    A.安装依赖 RF框架,robotframework本身. B.安装过程 可以通过下载 exe 程序进行安装,Robot Framework 分别提供了,win-amd64.exe 和 win32.e ...

  8. robot framework 安装配置

    robot framework 是一款专门用作自动化测试的框架,提供了丰富的内置库,与第三方库,也支持用户自己编写的库,robot framework +library 可以 用来做ui的自动化测试, ...

  9. Robot Framework入门学习1 安装部署详解

    安装注意: 目前Robot framework-ride不支持python3,安装时请下载python2.7版本. Robot Framework安装时出现了一点小问题,网上没有找到直接的介绍,现将安 ...

  10. Robot Framework自动化测试(七)--- jybot模式

    虽然,很久不用关于Robot Framework框架了,但我这里应该是除了@齐涛-道长之外分享Robot Framework 相关资料比较多的地方了.所以,常常被问到一些关于该框架的问题. 虽然,我一 ...

随机推荐

  1. 阿里云上Docker Compose部署wordpress

    先上官方文档: https://docs.docker.com/compose/wordpress/ 我的环境: [root@xyjk1002 ~]# cat /etc/redhat-release ...

  2. Centos7管理selinux及使用firewalld管理防火墙

    CentOS 7.0默认使用的是firewall作为防火墙 1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status ...

  3. Servlet中参数获取方法

    在web.xml里面可以定义两种参数: 一种是全局范围的参数, 一种是servlet内的参数. web.xml里定义参数的应用举例:在做分页功能时,可以在代码中直给定pageSize的值,这样,写死在 ...

  4. Mongo 查询

    Mongo 查询   mongo js 遍历 db.getCollection('CPU').find({}).limit(100).sort({"time":-1}).forEa ...

  5. C/C++中浮点数输出格式问题

    在C语言中,浮点数的输出格式有三种:%g, %f, %e 首先要说的是%e是采用科学计数法来显示. %g与后两者有一个重要的差别,就是设置输出精度的时候,(C中默认浮点输出精度是6),%g认为,包括整 ...

  6. python全栈开发从入门到放弃之网络基础

    一.操作系统基础 操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才 ...

  7. Django中间件(含Django运行周期流程图)

    Django中的中间件(含Django完整生命周期图) Django中间件简介 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,djang ...

  8. Java并发(7):阻塞队列

    在前面我们接触的队列都是非阻塞队列,比如PriorityQueue.LinkedList(LinkedList是双向链表,它实现了Dequeue接口). 使用非阻塞队列的时候有一个很大问题就是:它不会 ...

  9. ORA-00911: 无效字符\n

    使用EXECUTE IMMEDIATE执行命令时命令字符串不能添加命令结束符";",否则会报此错

  10. Log4Net各参数API

    <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSe ...