1.   RobotFrameWork安装配置

1.1. 安装环境

64位win10家庭中文版

网上很多这方面的教程,但是比较零散,这里是自己安装配置的一个简单的笔记。

1.2. 安装说明

由于Robot Framework框架是基于Python语言开发的,要想使用Robot FrameWork首先需要Python环境。

在学习和使用Python时,首先碰到的是版本问题,这在其他编程语言中是不存在的,目前Python分为Python2和Python3两个版本。之所以会有2个版本并存的情况,是因为随着近几年Python语言的逐渐流行起来,早起Python版本在基础设计上存在一些不足之处,Python3在设计的时候很好的解决了这些遗留问题,并且在性能上也有了很大的提升,但同时带来了新的问题就是不完全向后兼容,所以造成了2个版本并存的情况。

由于RobotFramework框架是基础Python2开发的,所以在这里选择安装Python2。[1]

1.3. 安装文件准备

表1 安装文件准备

顺序

名称

安装方法

下载地址

说明

1

python

双击默认安装python-2.7.13.amd64.msi

https://www.python.org/

一切的基础,安装路径不能有空格

2

pip

Cmd中执行easy_install Pip

https://pip.pypa.io/en/latest/index.html

easy_install.exe pip

3

wxPython

直接双击下载的文件wxPython

http://wxpython.org/download.php#stable

或在cmd中使用命令pip install –U wxPython,支撑Ride的运行库

4

robotFramework

直接双击安装文件robotframework-2.8.7.win-amd64.exe

https://pypi.python.org/pypi/robotframework/2.8.7

robot framework本身

5

robotFramework-ride

cmd命令里面执行执行pip install robotframework-ride

https://pypi.python.org/pypi/robotframework-ride

ride本身

6

Robotframework-selenium2library

cmd中执行命令pip install robotframework-selenium2libray

https://pypi.python.org/pypi/robotframework-selenium2library

selenium2测试库,基于webdriver驱动

7

pywin32

exe文件,直接双击安装,注意版本对应

https://sourceforge.net/projects/pywin32/files/pywin32/Build%20219/

AutoItLibrary安装前提

8

AutoItV3

exe文件,直接双击安装

http://www.autoitscript.com/site/autoit-news/autoit-v3-3-10-0-released/

AutoItLibrary使用前提

9

AutoItLibray

cmd中执行pip install AutoItLibrary

http://code.google.com/p/robotframework-autoitlibrary/

AutoItLibrary测试库

10

Requests

cmd命令执行:pip install requests

https://pypi.python.org/pypi/requests

RequestsLibrary库使用前提

11

RequestsLibrary

cmd命令执行:pip install -U robotframework-requests

https://github.com/bulkan/robotframework-requests

[2][3]http request库

说明

链接:http://pan.baidu.com/s/1dFrR1QD 密码:rbwa

百度网盘软件整理

由于版本的适应性问题,下载2.7.13版本即可。对于windows用户来说,如果你的系统是32位的请选择x86版本,如果是64位系统请选择64版本进行下载。下载完成之后会得到一个以.msi为后缀名的文件。

1.4. 安装步骤

1.4.1.   安装python

根据下载的python2.7文件,双击根据提示安装,这里操作时选择的默认安装。

说明:python-2.7.13中已经默认安装了setuptools,所以不用再次安装此套件。

配置

安装完成之后需要配置python的环境变量,将C:\Python27和C:\Python27\Scripts添加到环境变量path中,如图所示

安装完成之后,在cmd窗口中输入python,返回python版本号则表示安装成功,如图

1.4.2.   安装pip[4]

安装完成python之后,进入python的安装目录,如C:\Python27\Scripts

执行easy_install.exe pip,如图

则Python\Scripts文件夹下会出现一系列和pip有关的文件,其中有pip.exe,说明pip命令可以使用,如图

在cmd下输入pip,如图能识别pip命令,则说明pip安装成功了。如图

1.4.3.   安装wxPython

方法一

安装wxPython则直接使用pip命令安装即可。

在cmd中执行命令pip install –U wxPython,如图

可以下载wxPython文件直接双击安装,这里采用的是第二种方法安装。

1.4.4.   Robotframework安装

直接双击下载的robotframework2.8.7文件,默认安装即可

安装完成之后在cmd中使用pip list,可以查看安装的套件,如图

1.4.5.   Robotframework-ride安装

ride的安装直接使用pip进行操作

在cmd中执行pip install robotframework-ride命令,如图

1.4.6.   Robotframeworkwork-selenium2library安装

在cmd中执行命令pip install robotframework-selenium2library,如图

1.4.7.   Autoit安装

下载autoit-v3-setup.exe,双击默认安装即可,安装完成之后本机上会出现auto v3图标,如图

1.4.8.   AutoItLibrary安装

直接使用pip安装

在cmd中,执行命令pip install AutoItLibrary,如图

安装完成之后可以使用pip list查看安装的套件,如图

这样robotframework+selenium整个环境配置已经完成,接下来就是自动化的实际操作。

1.5. Robotframework+jenkins配置

假设我们完成了一个模块的用例设计,可是想晚上9点或凌晨运行,这时候该怎么实现呢?jenkins可以很好解决我们的疑难。

1.5.1.   Jenkins安装

这里简单说下安装,建议下载war包在tomacat中启动或是直接在cmd中使用命令启动jenkins(如果已经使用.msi安装成windows服务了,下面会提到解决方法)。

1.5.2.   配置

  • 基本信息

在jenkins主页中,新建 一个自由风格的项目,配置项目的名称等基本信息如图

因为这里没有使用svn或git,文件直接保存在本地,所以没有使用源码管理,如果使用了源码管理的可以根据实际情况配置源码管理的配置信息。

  • 构建触发器

这里选择使用Build periodically,进行定时构建,如图

这里设置的是每天凌晨2点进行构建。

这里注意选择的是build Periodically,选择的是定时构建,不管代码是否有更新;而另外一个构建方式Poll SCM,则是svn或git代码有更新才会再制定的时间内进行构建

  • 构建

接下来就是构建过程,这里是windows环境,所以使用的是Execute Windows batch command

使用命令执行要运行的用例如pybot.bat -d F:\outputdir F:\test\cswx\,这里-d是将执行结果保存在F:\outputdir目录下,而F:\test\cswx\是需要执行用例的文件夹

  • 构建后操作

这里提前需要安装一个插件Public Robot Framework test result

如果构建的时候,使用的是默认的输出目录,那么这里的Directory of Robot output 默认为空。

  • 执行结果

构建之后查看结果如图

说明

出现提示selenium脚本打不开浏览器[Keyword 'Capture Page Screenshot' could not be run on failure: No browser is open]

如果使用的jenkins的是windows服务,那么建议停止该服务,然后执行cmd命令,重新启动,命令格式java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar D:\Jenkins\jenkins.war[5]

执行用例的时候提示robotframework提示gckodriver相关信息,如截图所示

解决方法:需要名为geckodriver.exe的一个火狐浏览器driver在path中,当然解决办法就是,下载一个geckodriver.exe并将存放的路径添加在path中,简单点就直接放python的根目录下即可,下载地址 https://github.com/mozilla/geckodriver/releases,另外需要注意下,geckodriver分32及64位的版本,版本需与浏览器对应。


[1] 百度文库:https://wenku.baidu.com/view/3875735f6bec0975f565e207.html

[2] 博客园http://www.cnblogs.com/Ming8006/p/4998492.html

[3] 博客
http://www.blogjava.net/lijun_li/archive/2016/10/25/431926.html

[4] 博客园http://www.cnblogs.com/yinrw/p/5837828.html

RobotFrameWork自动化系列:安装配置的更多相关文章

  1. robotframework自动化系列:随机下拉框

    robotframework自动化系列:随机下拉框 随着项目自动化不断推进,在下拉框定位的时候出现些问题,每次下拉框选择都是相同的下拉选项,如果想每次选择的选项不一样,该如何实现呢,查找了很多资料,没 ...

  2. robotframework自动化系列:删除操作流程以及总结

    之前已经完成了登录.新增和修改的操作流程,这一节主要说明删除操作流程以及自动化的过程中出现的问题,算是对这个项目自动化的一个总结. 删除操作流程 对于系统账号管理中删除功能,删除的测试点主要如图所示 ...

  3. robotframework自动化系列:操作mysql数据库

    随着项目自动化深入和不断完善,大部分功能都已经能完成了自动化的操作:但是在设备添加的时候,遇到了难题.添加设备的时候mac必须是服务器设备管理中已经存在的mac地址,且是没有关联或绑定用户的设备信息. ...

  4. robotframework自动化系列:新增流程

    刚接手项目的时候,要求所有流程在上线之前必须确保正向操作是正确的:这个时候又有新的模块需要测试,所以引入自动化测试是非常有必要的!通过对比,尝试使用RF进行自动化的回归测试. 测试中最常见的操作就是增 ...

  5. robotframework自动化系列:修改流程

    在上一小节中,新增流程操作已经完成.那么接下来就是修改的流程操作了,对于一个页面的修改如何操作呢? 针对修改修改操作是在一个已经存在的账号直接修改还是新添加一个账号再修改呢?从用例设计健壮性出发,我们 ...

  6. robotframework自动化系列:文本类型的下拉框

    对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...

  7. Centos6.x/Oracle11G 自动化静默安装配置脚本

    部分脚本截图如下,要想玩转联系Ruiy哥提供脚本下载路径,附件在本博客的文件栏中维护,为了避免懒人一味的索取别人的劳动成果特此如此; 想玩的Ruiy mail to you! 快6.1了,6.1娃子们 ...

  8. Robotframework自动化系列:筛选结果数量统计

    Robotframework自动化系统:筛选结果数量统计 上一个节点已经可以随机选中某一个下拉框的值,我们在使用evaluate随机数的时候需要计算下拉选项总数,这时候我们是手工计算输入的:这时候如果 ...

  9. robotframework自动化系列:登陆操作

    robotframework自动化系统:登录 robotframework对于编程能力比较弱的测试人员而言,真的是雪中送炭!我们可以使用robotframework根据之前完成的测试用例,一步步完善自 ...

随机推荐

  1. 心情日记app总结 数据存储+服务+广播+listview+布局+fragment+intent+imagebutton+tabactivity+美工

    ---恢复内容开始--- 结果截图如下: 第一张图是程序主界面,主要是显示记事列表的一些个事件.旁边的侧拉框是自己登陆用的.可以设置密码.可以查看反馈与关于等信息. 点击第一张图片下方的图标,会显示不 ...

  2. java 短信猫发送短信的方法

    用java实现短信收发的功能,目前一般项目中短信群发功能的实现方法大致有下面三种: ·                 1. 向运行商申请短信网关,不需要额外的设备,利用运行商提供的API调用程序发送 ...

  3. python socket初探

    先看一段代码 import socket import sys import re def getServerContent(url): host_ip = socket.gethostbyname( ...

  4. 代码调试过程中easy遇到的问题

    前两天身体有些不舒服,也没写啥新文章,昨天下了一天的雨.今天阳光明媚,空气也非常新奇.心情大好. 继翻译为什么输出是String而不是Object,今天先写一下调试方面的东西.java中自带的函数调试 ...

  5. nfs 挂载错误

    [ 147.080000] svc: failed to register lockdv1 RPC service (errno 146). [ 147.090000] lockd_up: makes ...

  6. BZOJ 4976: 宝石镶嵌 背包

    4976: 宝石镶嵌 Time Limit: 2 Sec  Memory Limit: 128 MB Description 魔法师小Q拥有n个宝石,每个宝石的魔力依次为w_1,w_2,...,w_n ...

  7. DTD复习笔记(复习资料为菜鸟教程里的DTD教程)

    DTD(文档类型定义)的作用是定义 XML 文档的合法构建模块. DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用. 为什么使用 DTD? 通过 DTD,您的每一个 XML 文件均可携带 ...

  8. Java,如何获取文件的MD5值

    MessageDigest类封装得很不错,简单易用 不多说,直接上代码 import java.io.FileInputStream;import java.security.MessageDiges ...

  9. luogu2704 炮兵阵地 状态压缩DP

    题目大意:一个N*M的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),在每一格平原地形上最多可以布置一支炮兵部队,能攻击到的区域:沿横向左右各两格,沿纵向上 ...

  10. PR修改例子

    DATA: lt_items_old    LIKE TABLE OF bapiebanv   WITH HEADER LINE.   DATA: lt_items_new    LIKE TABLE ...