从零开始安装Robot Framework(基于Python2.7版本)

----公告:本章内容仅适用于Python2.7 + RobotFramework3.0.2 + Ride1.5.2.1 + wxPython2.8.12.1版本。适用于Python3的RF环境搭建请移步查看作者的另一篇文章。

当初开简书的目的是总结RF自动化测试的学习和分享,网上有很多教程,虽然有好几个程序要安装,其实还是很简单的,所以没分享过程,为了学习顺序现在还是补上吧。

本文讲Windwos系统安装RF方法,初学者按照步骤正常安装,基本不会有多大问题。如果不是新手,只是需要安装包,文末单独提供下载链接,请直接跳到底部,请自行按需选择64位或32位程序,否则会出现环境无法正常启动的问题。

第一部分、在Windows下安装Robot Framework

1.1RF框架介绍

Robot Framework框架是一个通用的测试框架,一直是由诺西网络(Nokia Siemens Networks Oyj)的人员维护。在诺基亚卖掉手机业务后,更名为诺基亚解决方案网络(Nokia Solutions and Networks)。

官方地址:RF官网

官方介绍:The framework was initially developed at Nokia Networks and itis nowadays sponsored by Robot Framework Foundation

官方指南:RF官方指南

API documentation:官方API文档

RF的特性:

易于使用,采用表格式语法,统一测试用例格式;

可以使用关键字驱动(keyword-driven)、数据驱动(data-driven)和行为驱动开发(BDD)完成;

重用性好,可以利用现有关键字来组合新关键字;

结果报告和日志采用HTML格式,易于阅读;

平台和应用无关联性;

模块结构支持使用不同的接口来测试你的应用;

易于扩展,提供了简单API,用户可以自定义的基于Python或者Java的测试库;

易于集成,提供了命令行接口和基于XML的输出文件;

功能全面,支持WEB测试(Selenium)、Java GUI测试,启动线程、Telnet、SSH等;

RemoteLibrary接口可以支持分布测试和使用其他编程语言实现测试库;

提供tag标签来分类和选择你的案例执行;

内置支持变量variables,支持不同的环境进行测试;



Robot Framework作为框架平台,上面可以加载各种Library,通过测试套件、资源文件集成起来,然后可以针对被测系统进行不同角度的测试,图中只列了三种Library,实际上还有很多种不同方向的Library。

1.2安装篇

Python:robot framework是基于python开发的。(必装)

SetuptoolsPip:使用pip命令在线自动安装库,非常方便(推荐)。

Robot framework:要想使用该框架(必装)。

wxPython:提供图形图形界面支持,使用ride则必装。

Robot framework-ride:可以看作Robot Framework框架的标准编辑器。各人的习惯不同,也可用PyCharm、Red或者Sublime等编辑器写RF脚本。

注意:按照操作系统是64位或32位选择软件,本文默认64位。

1.2.1、首先安装Python

下载地址:Python2.7.14

注意事项:

1、虽然RF3.0.2版本已经支持python3,由于编辑器Ride只支持python2,选择安装Python2.7.14;

2、在path环境变量中添加“D:\Python27;D:\Python27\Scripts;”

3、建议不要安装在C盘,可能日志越来越多,占用C盘空间会越来越大

4、安装路径不能有空格或中文字符。

1.2.2、安装setuptools和pip

首先简单说下这两个包的作用。

Setuptools能使程序员更方便的创建和发布Python包,特别是那些对其他包具有依赖性的状况。使用setuptools里的easy_install命令安装第三方Python包。

Pip是一个安装和管理Python包的工具,通过pip去安装Python包变得十分简单,pip依赖于setuptools,因此有安装顺序,先安装Setuptools,再安装Pip。

Setuptools下载地址:Setuptools

Pip下载地址:Pip

(Python2.7.14自带pip,安装python就能使用pip)

在E:\package\setuptools或pip的目录下执行命令:python setup.py install





注意事项:

1、如果在安装setuptools遇到xx包导入错误,没有发现xx包,可以自行去下载安装。下载地址:https://pypi.python.org/pypi,然后搜索自己缺少的包,例如six/packaging/appdirs,可以通过pip安装(命令pip install package),也可以通过下载源码,用命令安装python setup.py install。

2、如果提示pip不是内部命令,检查环境变量是否配置正确。

1.2.2、安装Robot Framework

下载地址:RF 3.0.2

提供了exe的文件和tar.gz文件,前者可以直接双击安装,后者则需像安装Python包一样用Python setup.py install,或者通过pip命令:pip install robotframwork

写这个文章时RF最新版本是3.0.2,请注意最近更新情况。

1.2.4、安装wxPython

下载地址:wxPython2.8.12.1

wxPython是Python非常有名的GUI库,RIDE基于这个库开发,所以必须安装。

1.2.5、安装RIDE

下载地址:Ride

写本文时版本是:robotframework-ride 1.5.2.1

RIDE是Robot Framework的图形编辑器,使用它写脚本方便快捷。

安装完成后你可能发现电脑桌面没有RIDE机器人图标,可以手动创建:

1、在桌面上右键新建快捷方式

2、在“请键入对象”的位置上输入命令:

D:\Python27\pythonw.exe -c “from robotide import main;main()”

(D:\为Python的安装路径)

3、机器人图标,快捷方式上右键→属性→更改图标,在“浏览”中输入路径“D:\Python27\Lib\site-packages\robotide\widgets”,找到机器人的图标点击确定。

到此Robot Framework安装完毕,你可以开始机器人的梦幻之旅了!

1.3下面再介绍一下标准库和接口测试库

标准库是Robot Framework可以直接导入使用的库,包含以下几类:

Builtin:包含经常需要的关键字。自动导入无需import,因此总是可用的

Dialogs:提供了暂停测试执行和从用户的输入方式。

Collections:提供一组关键词处理Python列表和字典。

OperatingSystem:允许执行各种操作系统相关的任务。允许执行各种操作系统相关的任务,使各种操作系统相关的任务在robot framework正在运行的系统中执行。

Remote:远程库接口的一部分。没有自己的任何关键字,作为robot framework和测试库之间的代理的特殊库。实际测试库可以在不同的机器上运行,可以使用任何编程语言支持XML-RPC协议的实现。

Screenshot:提供关键字来捕获和存储桌面的截图。

String:用于处理字符串并验证它们内容的库,用于生成、修改和验证字符串。

Telnet:支持连接到Telnet服务器,执行命令。

XML:用于生成、修改和验证XML文件的库。

Process:系统中运行过程的库。

DateTime:日期和时间转换的库,支持创建和验证日期和时间值以及它们之间的计算。

SudsLibrary:用于Web Service服务端接口测试的库,可处理Soap请求

Requests,RequestsLibrary:基于Restful http接口测试库,大名鼎鼎常用的get post等

第二部分、Requests接口自动化测试介绍

主要介绍几种常见的接口如何进行自动化测试,重点是get request和post request。这部分测试案例可以在这里找到:https://github.com/qitaos/rf-demos/tree/master/RequestsDemo。不过,强烈建议大家查看官方的验收测试用例!

1.接口测试接口测试通常是系统之间交互的接口,或者某个系统对外提供的一些接口服务。现在大家也越来越多的关注接口测试了,因为有时候可能界面上的功能还没有实现,我们可以先一步对接口进行验证,提早发现一些和预期不一致的错误。这方面的工具还有Postman、SoapUI、Jmeter等等,基于RF的接口测试库我们首推requests和requestsLibrary。

2.requestsLibrary、requests安装可以通过pip安装,或者手动安装,下载地址如下,如果是下载安装,先要安装requests,再安装requestsLibrary。

requests的官方下载地址: https://pypi.python.org/pypi/requests

requestsLibrary

的官方下载地址:https://pypi.python.org/pypi/robotframework-requests/

3. requestsLibrary关键字

requestsLibrary的关键字不多,我常用的就几个。

Create Session:

创建一个session,连接某个服务器

Create Ntlm Session:

也是创建一个session,只不过加上了域、用户名、密码用于NTLM认证。

Get Request:

通过GET方式发起请求。

Post Request:

通过POST方式发起请求。

Head Request:

发送一个HEAD请求。

TO Json:

将文本转换成json对象。


以上


Python:www.python.org/downloads/release/python-2714/

Setuptools:https://pypi.python.org/pypi/setuptools

RobotFramework:https://pypi.python.org/pypi/robotframework/3.0.2

wxPython:sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1

Ride:https://pypi.python.org/pypi/robotframework-ride   (版本1.5.2.1)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容