从零开始安装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)

推荐阅读更多精彩内容