RobotFrameWork自动化测试环境搭建

前言
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
下载

https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2018-12/R/eclipse-java-2018-12-R-win32-x86_64.zip&mirror_id=105

我下载的是4.10版本的,Eclipse配置RF最好选择Mars(Eclipse版本代号)4.5以上

 

下载完成后解压到指定目录,然后双击运行Eclipse.exe并设置一个工作目录即可运行Eclipse编辑器

安装robotframework-ide
robotframework-ide就是RED,是Eclipse运行RF和编写RF脚本的插件,以下链接是RED官网

GitHub - nokia/RED: RED - Robot Editor

官网介绍了配置Eclipse的RF的方法,可以参考一下

打开Eclipse-菜单选择【help】-点击【install new software】-点击【Add】

name:随便输入

location:输入 RED - Robot Editor - Browse Files at SourceForge.net

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脚本代码的同学来说,使用起来很友好


下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/107749.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯打卡Day7

文章目录 阶乘的末尾0整除问题 一、阶乘的末尾0IO链接 本题思路:由于本题需要求阶乘的末尾0,由于我们知道2*510可以得到一个0,那么我们就可以找出2的数和5的数,但是由于是阶乘,所以5的数量肯定是小于2的数量&#xf…

企业网络革命:连接和访问的智慧选项

近年来,企业网络通信需求可谓五花八门,变幻莫测。它不仅为企业的生产、办公、研发、销售提供全面赋能,同时也让企业业务规模变大成为了可能。今天,我们来聊聊广域网中两个不可忽视的概念:连接(Connection&a…

飞行动力学 - 第20节-part3-机翼位置及尾翼对横向稳定性影响 之 基础点摘要

飞行动力学 - 第20节-part3-机翼位置及尾翼对横向稳定性影响 之 基础点摘要 1. 翼身干扰2. 平尾贡献3. 尾翼贡献4. 参考资料 1. 翼身干扰 - 机翼垂直位置 上单翼,增稳 下单翼,降低稳定性 上反角 增稳 正比于上反角 下反角 降低稳定性 反比于上反角 后掠…

【窗体】Winform两个窗体之间通过委托事件进行值传递,基础篇

2023年,第38周。给自己一个目标,然后坚持总会有收货,不信你试试! 在实际项目中,我们可能会用到一些窗体做一些小工具或者小功能。比如:运行程序,在主窗体A基础上,点击某个按钮希望能…

idea创建一个微服务项目

idea创建一个微服务项目 前提:懂得创建基于pom 的 springboot项目 1.像平时创建Maven项目一样创建一个项目 2.删掉src文件,只剩下下面的东西 3.基于这个项目创建model,model也是一个Maven项目,基于springboot mvc 都行&#xff…

工作中有许多比较常用的SQL脚本

工作中有许多比较常用的SQL脚本,今天开始分几章分享给大家。 1、行转列的用法PIVOTCREATE table test (id int,name nvarchar(20),quarter int,number int) insert into test values(1,N苹果,1,1000) insert into test values(1,N苹果,2,2000) insert into test va…

01-Kafaka

1、Kafka 2 的安装与配置 1、上传kafka_2.12-1.0.2.tgz到服务器并解压: tar -zxf kafka_2.12-1.0.2.tgz -C /opt 2、配置环境变量并更新: 编辑profile配置文件: vim /etc/profile #设置kafka的环境变量export KAFKA_HOME/opt/kafka_2.1…

Redis——渐进式遍历和数据库管理命令

介绍 如果使用keys * 这样的操作,将Redis中所有的key都获取到,由于Redis是单线程工作,这个操作本身又要消耗很多时间,那么就会导致Redis服务器阻塞,后续的操作无法正常执行 而渐进式遍历,通过多次执行遍历…

Python灰帽编程——初识Python上

1. Python 简介 常用安全工具语言示例perljoomscan whatwebrubymetasploit-frameworkpythonsqlmap pocsuite3gogoby 1.1 Python 起源 1.1.1 语言的作者 贵铎范罗萨姆(Guido van Rossum)荷兰人于1989 年圣诞节始创了python。 大神就是大神&#xff0…

MyBatis中当实体类中的属性名和表中的字段名不一样,怎么办

方法1: 在mybatis核心配置文件中指定,springboot加载mybatis核心配置文件 springboot项目的一个特点就是0配置,本来就省掉了mybatis的核心配置文件,现在又加回去算什么事,总之这种方式可行但没人这样用 具体操作&…

[每周一更]-(第62期):SRE 是什么?

在公司Devops平台搭建,采用了JenkinsGitGitlabDocker,进行了自动化构建和部署代码,解放了繁杂的代码更改到test/prod环境的问题; 这部分更多是运维比例极大,少量的开发操作,基本都是配置命令行以及yml配置、…

JDK20 + SpringBoot 3.1.0 + JdbcTemplate 使用

JDK20 SpringBoot 3.1.0 JdbcTemplate 使用 一.测试数据库 Postgres二.SpringBoot项目1.Pom 依赖2.配置文件3.启动类4.数据源配置类5.实体对象类包装类6.测试用实体对象1.基类2.扩展类 7.测试类 通过 JdbcTemplate 直接执行 SQL 语句,结合源码动态编译即可方便实现…