RobotFrameWork Web自动化测试环境搭建
前言
Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD),支持python,java等编程语言(百度百科)。功欲善其事必先利其器,在学习RF之前同样需要搭建开发环境,包括运行环境的搭建,web自动化测试环境的搭建,所以今天会讲解3种RF测试环境的搭建--RIDE,Pycharm及Eclipse,你可以根据自己的喜好选择使用哪种环境做RF自动化测试
python安装
由于我们主要使用python环境开发RF脚本,因此python的安装是必不可少的,但是今天不过多介绍,网上教程很多,安装过程也很简单
浏览器驱动安装
浏览器及浏览器驱动的安装是做web自动化测试必不可少的部分,当然,这里还是省略配置步骤,网上教程依然很多,提供一个下载Chrome驱动的链接
https://npm.taobao.org/mirrors/chromedriver
RIDE环境配置
安装RIDE
RIDE一般是初学者习惯使用的开发RF脚本的一个工具,具有图形化的界面,使用简单,无需手动编写python代码,学习成本比较低,而且安装很简单!
打开CMD,执行 pip3 install robotframework-ride命令即可
安装完RIDE后,我们打开python的安装目录下的Script目录,会发现多了一个ride.py和robot.exe文件
ride.py就是RIDE GUI的启动程序,我们可以双击启动一下看看是否能够打开RIDE的GUI界面,如果打开后出现下面的界面,说明RIDE工具已经安装成功了,是不是很简单?
疑问
1. 有的同学可能会有个疑问,为什么网上找的教程那么复杂,还要安装wxPython,robotframework库?
答:如果使用RIDE工具,以上的依赖库确实需要安装,因为RIDE GUI是wxPython实现的,而使用RF框架又要依赖robotframework库,我这里没有单独安装,是因为在安装robotframework-ride的时候,pip已经给你安装好了这些依赖^-^,不信可以看看前面的截图,如果你再安装过程种没有自动安装依赖环境,那么就手动使用pip命令安装一下这几个库即可
2. 安装完RIDE,但是打不开GUI页面,怎么办?
答:因为执行ride.py需要使用python解释器,设置一下ride.py文件的执行方式为python的解释器即可
安装seleniumlibrary
seleniumlibrary库是基于selenium做的二次封装库,主要针对RF使用的版本,因此需要安装才能使用RF实现web自动化测试
打开CMD执行pip3 install robotframework-seleniumlibrary命令即可
同样,在安装这个库的时候,selenium同样会被自动安装,因为robotframework-seleniumlibrary是基于selenium封装的,针对RF框架实现web自动化测试的依赖库
ok,到目前为止,所有的环境都已经安装完成,我们可以写一个简单的脚本测试一下环境是否存在问题
环境测试
具体脚本如何编写,这里不做介绍,我只写了一个打开浏览器访问百度首页的一条脚本
如果你看到以下输出信息并且浏览器被成功打开那么说明你的环境已经搭建成功,可以学习如何使用RF编写自动化测试脚本了
执行结果
小结
RIDE对于初学者,使用起来还是比较方便的,可以查看关键字的使用,编写脚本可以通过填写表格的方式完成,也可以直接编写代码,但是没有智能提示,也不会自动补全代码,写起来比较累
Pycharm环境配置
作为一个专注于python语言的开发者,最喜欢使用的IDE首选就是pycharm,因为他功能强大,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发,那么长时间以来,你可能会形成一种依赖,不管做什么开发都希望使用pycharm,因为你已经足够了解它并且爱上它,那么做RF自动化能不能使用pycharm讷?当然,这么强大的工具干啥不行讷?接下来我们就讲解以下如何使用pycharm搭建RF的web自动化测试环境
使用pycharm配置RF做web自动化测试之前,同样需要安装selenium,robotframework,robotframework-seleniumlibrary,浏览器及浏览器驱动,不需要robotframework-ride,你可以按照以下方式安装
pip3 install selenium
pip3 install robotframework
pip3 installl robotframework-seleniumlibrary
由于我上面在配置RIDE的时候已经安装过了,所以接下来就不需要再安装这个几个库了
pycharm安装
安装步骤这里也不再赘述,百度一堆一堆,破解方法也一堆一堆
安装intelliBot插件
这个插件主要为了Pycharm能够识别RF脚本及编写执行RF脚本
打开Pycharm-点击右上角【File】-选择【Setting】-点击【Plugins】
搜索框输入intelliBot,点击上图中的Install,等待安装完成
注意:安装完插件之后需要重启pycharm
配置RF的文件类型识别
同样打开【Setting】-选择【Editor】-点击【File Types】-在右侧文件列表中找到【Robot Feature】,并添加RF脚本所有的文件类型
配置完保存即可
Suite和Case的运行配置
因为RF框架编写的测试脚本是无法使用python解释器运行的,它有自己的执行脚本程序robot.exe,这个程序再执行pip3 install robotframework 时自动安装,存在于python安装目录的script目录下
配置Suite
打开pycharm的设置-选择【Tools】-选择【External Tools】,右侧窗口点击【+】号并填写如下配置信息
name:可以随意取名字,但是最好还是按照图片中的名字写,见名知意
Program:robot.exe程序所在的目录
Arguments:-d 指定存放报告的目录名 报告名字(系统自动命名的报告名)
Working directory:当前的项目目录
配置完成后保存
配置Case
同上步骤设置,填写如下图的配置信息
Arguments:-t 后面表示执行鼠标选中的测试用例(注意:需要选中测试用例名,而不是把鼠标放到用例名上)
运行用例
配置完以上环境后,项目中选择某个测试套件或者套件中选中单个测试用例名,右键选择【External Tools】-选择对应执行方式即可执行测试用例或套件
环境测试
同样使用pycharm编写一段打开浏览器,访问百度首页的脚本,然后分别选择运行测试套件和运行单个测试用例,看一下是否成功
脚本
*** Settings ***
Library SeleniumLibrary *** Test Cases ***
打开浏览器
SeleniumLibrary.Open Browser https://www.baidu.com Firefox
当运行脚本时,如果你看到浏览器正常打开,且输出的信息中测试用例或者套件全部通过,表示环境配置成功
Eclipse环境搭建
单独搭建Eclipse集成RF做web自动化测试之前, 同样需要安装selenium,robotframework,robotframework-seleniumlibrary,浏览器及浏览器驱动,不需要robotframework-ride
安装JDK
Java JDK真是无处不在,这里也不讲解JDK安装过程了,相信对所有开发人员来说,JDK的安装已经是必不可少的了
安装Eclipse
下载
我下载的是4.10版本的,Eclipse配置RF最好选择Mars(Eclipse版本代号)4.5以上
下载完成后解压到指定目录,然后双击运行Eclipse.exe并设置一个工作目录即可运行Eclipse编辑器
安装robotframework-ide
robotframework-ide就是RED,是Eclipse运行RF和编写RF脚本的插件,以下链接是RED官网
官网介绍了配置Eclipse的RF的方法,可以参考一下
打开Eclipse-菜单选择【help】-点击【install new software】-点击【Add】
name:随便输入
location:输入 http://master.dl.sourceforge.net/project/red-robot-editor/repository
add之后会出现以下页面
直接一路Next,安装过程会提示重启Eclipse,重启即可
配置python版本
重启后需要配置一下安装了robotframework的python解释器
打开【window】-选择【preferences】
这里的解释器会自动识别出来,如果不会自动识别,可以点击add手动添加,接下来点击【Apply and Close】即可
配置RF的标识,变量,关键字自动补全
点击【windows】 - 【preference】 - 【RobotFramework】 -【 Editor】 - 【Content Assitant】加上如下内容:
.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$@&*
修改Eclipse中文编码
配置python解释器
如果你不打算使用Eclipse编写运行python脚本,那么你可以跳过此步骤,但是如果你后期想使用python开发关键字,那么可以选择安装,Eclipse编写python解释器,需要依赖pyDev插件
安装pyDev
原装RED的方式相同,打开Eclipse-菜单选择【help】-点击【install new software】-点击【Add】
name:随便输入
location:输入 http://pydev.org/updates
一路Next,等待安装完成,安装时会提示重启Eclipse,选择重启即可
重启后,点击【windows】 - 【preference】 - 【PyDev】 -【 Interpreters】 - 【Python Interpreter】按照下图设置python解释器
点击【ok】,弹窗后选择对应目录
点击【ok】之后等待加载完毕,保存所有的操作,接下来就可以使用Eclipse创建python项目,编写python代码了
环境测试
接下来我们就可以编写脚本验证一下我们的环境是否存在问题了,如何新键RF项目,编写RF脚本这里先不讲解,我还是使用之前编写的脚本,打开火狐浏览器访问百度首页来验证环境,如果环境没问题你会看到如下输入
总结
目前为止所有的能够编写RF脚本的3种环境都已配置完成,3个环境各自有各自的优缺点
RIDE:适合初学者,不喜欢写代码或者对代码不是很精通的测试人员,主要以填写表格的形式开发脚本
Pycharm:pycharm对RF脚本的支持不是很好,这也不能怪pycharm,因为配置RF的插件不给力,没那么多功能,使用起来不太友好
Eclipse:对于Eclipse来说,它的RF插件(RED)比较强大, 既可以支持表格形式编写脚本,又可以使用纯代码的方式编写脚本,支持代码自动补全,高亮显示,最主要一点可以查看所有的关键字的帮助文档,并且对于喜欢直接写RF脚本代码的同学来说,使用起来很友好
相关链接
RF官网:https://robotframework.org/ 以上所有的环境配置过程及插件你都能再官网找到
RED官网:https://github.com/nokia/RED
RobotFrameWork Web自动化测试环境搭建的更多相关文章
- Web自动化测试环境搭建1(基于firefox火狐浏览器)
自动化测试是时代趋势,因此很多测试人员开始研究自动化测试,web自动化测试化测试并不难,但是很多人都是被挡在了环境搭建这一步,后面学习激情全无,这里,韬哥手把手教大家搭建火狐浏览器下的自动化测试环境( ...
- selenium +python web自动化测试环境搭建
基础框架搭建 1.安装python 2.安装selenium cmd输入pip install selenium 问题:在python中输入from selenium import webdriver ...
- selenium + python 自动化测试环境搭建
selenium + python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操 ...
- Web自动化测试项目搭建目录
Web自动化测试项目搭建(一) 需求与设计 Web自动化测试项目(二)BasePage实现 Web自动化测试项目(三)用例的组织与运行 Web自动化测试项目(四)测试报告 Web自动化测试项目(五)测 ...
- Appium 简介与自动化测试环境搭建
1. Appium 简介 2. Appium 自动化测试环境搭建 1. Appium 简介 Appium 是一个开源测试自动化框架,可用于原生,混合和移动 Web 应用程序测试. 它使用 WebDri ...
- CentOS下Web服务器环境搭建LNMP一键安装包
CentOS下Web服务器环境搭建LNMP一键安装包 时间:2014-09-04 00:50来源:osyunwei.com 作者:osyunwei.com 举报 点击:3797次 最新版本:lnmp- ...
- Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python
Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...
- Selenium终极自动化测试环境搭建(一) Selenium+Eclipse+Junit+TestNG
Selenium终极自动化测试环境搭建(一)Selenium+Eclipse+Junit+TestNG 第一步 安装JDK JDk1.7. 下载地址:http://www.oracle.com/tec ...
- Web开发环境搭建 Eclipse-Java EE 篇
Web开发环境搭建 Eclipse-Java EE 篇 [原创内容,转载注名出处] 1. 下载和安装 1.1 下载JDK 在Java官方网站下载最新版本的 Java SE: http://www.o ...
随机推荐
- .NET Core CSharp初级篇 1-5 接口、枚举、抽象
.NET Core CSharp初级篇 1-5 本节内容类的接口.枚举.抽象 简介 问题 如果你需要表示星期或者是某些状态,使用字符串或者数字是否不直观? 你是否发现,无论何种电脑,它的USB口的设计 ...
- openlayer 5 获取中心点
之前在控制台把map对象打印出来后,有一个很像中心点坐标map.focus_.我可以确定的告诉大家,这个不是中心点坐标,检查出来的结果是地图中心最右的点位. 在创建地图时,会将中心点左边写在view中 ...
- C#8.0 中使用默认接口成员更新接口
连载目录 [已更新最新开发文章,点击查看详细] 从 .NET Core 3.0 上的 C# 8.0 开始,可以在声明接口成员时定义实现. 最常见的方案是安全地将成员添加到已经由无数客户端发布并使 ...
- [leetcode] 64. Minimum Path Sum (medium)
原题 简单动态规划 重点是:grid[i][j] += min(grid[i][j - 1], grid[i - 1][j]); class Solution { public: int minPat ...
- Nodejs监控Apple召回计划&邮件提醒
最近,我的MacBook Pro 2015款13寸电池膨胀了 把笔记本平放在桌面,四个脚中的前两个无法落地,笔记本盖合上之后,屏幕上会印上键盘的纹路,也就是说,笔记本C面D面变形了,已经购买超过3年, ...
- json与js对象间的转化
- markdown表情
Emoji表情 将对应emoji表情的符号码复制后输入你的markdown文本即可显示emoji表情. 如:blush:,显示为
- ACM线性基学习笔记
https://www.cnblogs.com/31415926535x/p/11260897.html 概述 最近的几场多校出现了好几次线性基的题目,,会想起之前在尝试西安区域赛的一道区间异或和最大 ...
- .net持续集成sonarqube篇之 sonarqube与jenkins集成(命令模式)
系列目录 Sonarqube结合Jenkins与常见问题 我们引入sonarqube组件的最终目的是要为整个Ci环境服务的,如果不能集成于当前的Jenkins CI,那么我们做的很多关于sonarqu ...
- 「玩转Python」打造十万博文爬虫篇
前言 这里以爬取博客园文章为例,仅供学习参考,某些AD满天飞的网站太浪费爬虫的感情了. 爬取 使用 BeautifulSoup 获取博文 通过 html2text 将 Html 转 Markdown ...