RobotFrameWork Web自动化测试之测试环境搭建
ccwgpt 2024-10-24 09:13 21 浏览 0 评论
前言
Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD),支持python,java等编程语言(百度百科)。功欲善其事必先利其器,在学习RF之前同样需要搭建开发环境,包括运行环境的搭建,web自动化测试环境的搭建,所以今天会讲解3种RF测试环境的搭建--RIDE,Pycharm及Eclipse,你可以根据自己的喜好选择使用哪种环境做RF自动化测试。
一、python安装
由于我们主要使用python环境开发RF脚本,因此python的安装是必不可少的,但是今天不过多介绍,网上教程很多,安装过程也很简单
1.1浏览器驱动安装
浏览器及浏览器驱动的安装是做web自动化测试必不可少的部分,当然,这里还是省略配置步骤,网上教程依然很多,提供一个下载Chrome驱动的链接
https://npm.taobao.org/mirrors/chromedriver
1.2RIDE环境配置
1.2.1安装RIDE
RIDE一般是初学者习惯使用的开发RF脚本的一个工具,具有图形化的界面,使用简单,无需手动编写python代码,学习成本比较低,而且安装很简单!
打开CMD,执行 pip3 install robotframework-ride命令即可
安装完RIDE后,我们打开python的安装目录下的Script目录,会发现多了一个ride.py和robot.exe文件
ride.py就是RIDE GUI的启动程序,我们可以双击启动一下看看是否能够打开RIDE的GUI界面,如果打开后出现下面的界面,说明RIDE工具已经安装成功了,是不是很简单?
1.2.2疑问
1. 有的小伙伴可能会有个疑问,为什么网上找的教程那么复杂,还要安装wxPython,robotframework库?
答:如果使用RIDE工具,以上的依赖库确实需要安装,因为RIDE GUI是wxPython实现的,而使用RF框架又要依赖robotframework库,我这里没有单独安装,是因为在安装robotframework-ride的时候,pip已经给你安装好了这些依赖^-^,不信可以看看前面的截图,如果你再安装过程种没有自动安装依赖环境,那么就手动使用pip命令安装一下这几个库即可
2. 安装完RIDE,但是打不开GUI页面,怎么办?
答:因为执行ride.py需要使用python解释器,设置一下ride.py文件的执行方式为python的解释器即可
1.3安装seleniumlibrary
seleniumlibrary库是基于selenium做的二次封装库,主要针对RF使用的版本,因此需要安装才能使用RF实现web自动化测试
打开CMD执行pip3 install robotframework-seleniumlibrary命令即可
同样,在安装这个库的时候,selenium同样会被自动安装,因为robotframework-seleniumlibrary是基于selenium封装的,针对RF框架实现web自动化测试的依赖库
ok,到目前为止,所有的环境都已经安装完成,我们可以写一个简单的脚本测试一下环境是否存在问题
1.4环境测试
具体脚本如何编写,这里不做介绍,我只写了一个打开浏览器访问百度首页的一条脚本
如果你看到以下输出信息并且浏览器被成功打开那么说明你的环境已经搭建成功,可以学习如何使用RF编写自动化测试脚本了
1.5执行结果
1.6小结
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的时候已经安装过了,所以接下来就不需要再安装这个几个库了
2.1pycharm安装
安装步骤这里也不再赘述,百度一堆一堆,破解方法也一堆一堆
2.2安装intelliBot插件
这个插件主要为了Pycharm能够识别RF脚本及编写执行RF脚本
打开Pycharm-点击右上角【File】-选择【Setting】-点击【Plugins】
搜索框输入intelliBot,点击上图中的Install,等待安装完成
注意:安装完插件之后需要重启pycharm
2.3配置RF的文件类型识别
同样打开【Setting】-选择【Editor】-点击【File Types】-在右侧文件列表中找到【Robot Feature】,并添加RF脚本所有的文件类型
配置完保存即可
2.4Suite和Case的运行配置
因为RF框架编写的测试脚本是无法使用python解释器运行的,它有自己的执行脚本程序robot.exe,这个程序再执行pip3 install robotframework 时自动安装,存在于python安装目录的script目录下
2.5配置Suite
打开pycharm的设置-选择【Tools】-选择【External Tools】,右侧窗口点击【+】号并填写如下配置信息
name:可以随意取名字,但是最好还是按照图片中的名字写,见名知意
Program:robot.exe程序所在的目录
Arguments:-d 指定存放报告的目录名 报告名字(系统自动命名的报告名)
Working directory:当前的项目目录
配置完成后保存
2.6配置Case
同上步骤设置,填写如下图的配置信息
Arguments:-t 后面表示执行鼠标选中的测试用例(注意:需要选中测试用例名,而不是把鼠标放到用例名上)
2.7运行用例
配置完以上环境后,项目中选择某个测试套件或者套件中选中单个测试用例名,右键选择【External Tools】-选择对应执行方式即可执行测试用例或套件
2.8环境测试
同样使用pycharm编写一段打开浏览器,访问百度首页的脚本,然后分别选择运行测试套件和运行单个测试用例,看一下是否成功
脚本
*** Settings ***
Library SeleniumLibrary
*** Test Cases ***
打开浏览器
SeleniumLibrary.Open Browser https://www.baidu.com Firefox
当运行脚本时,如果你看到浏览器正常打开,且输出的信息中测试用例或者套件全部通过,表示环境配置成功
三、Eclipse环境搭建
单独搭建Eclipse集成RF做web自动化测试之前, 同样需要安装selenium,robotframework,robotframework-seleniumlibrary,浏览器及浏览器驱动,不需要robotframework-ride
3.1安装JDK
Java JDK真是无处不在,这里也不讲解JDK安装过程了,相信对所有开发人员来说,JDK的安装已经是必不可少的了
3.2安装Eclipse
下载
我下载的是4.10版本的,Eclipse配置RF最好选择Mars(Eclipse版本代号)4.5以上
下载完成后解压到指定目录,然后双击运行Eclipse.exe并设置一个工作目录即可运行Eclipse编辑器
3.3安装robotframework-ide
robotframework-ide就是RED,是Eclipse运行RF和编写RF脚本的插件,以下链接是RED官网
https://github.com/nokia/RED
官网介绍了配置Eclipse的RF的方法,可以参考一下
打开Eclipse-菜单选择【help】-点击【install new software】-点击【Add】
name:随便输入
location:输入 http://master.dl.sourceforge.net/project/red-robot-editor/repository
add之后会出现以下页面
直接一路Next,安装过程会提示重启Eclipse,重启即可
3.3配置python版本
重启后需要配置一下安装了robotframework的python解释器
打开【window】-选择【preferences】
这里的解释器会自动识别出来,如果不会自动识别,可以点击add手动添加,接下来点击【Apply and Close】即可
3.47配置RF的标识,变量,关键字自动补全
点击【windows】 - 【preference】 - 【RobotFramework】 -【 Editor】 - 【Content Assitant】加上如下内容:
.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$@&*
3.5修改Eclipse中文编码
四、配置python解释器
如果你不打算使用Eclipse编写运行python脚本,那么你可以跳过此步骤,但是如果你后期想使用python开发关键字,那么可以选择安装,Eclipse编写python解释器,需要依赖pyDev插件
4.1安装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代码了
4.2环境测试
接下来我们就可以编写脚本验证一下我们的环境是否存在问题了,如何新键RF项目,编写RF脚本这里先不讲解,我还是使用之前编写的脚本,打开火狐浏览器访问百度首页来验证环境,如果环境没问题你会看到如下输入
总结
目前为止所有的能够编写RF脚本的3种环境都已配置完成,3个环境各自有各自的优缺点
RIDE:适合初学者,不喜欢写代码或者对代码不是很精通的测试人员,主要以填写表格的形式开发脚本
Pycharm:pycharm对RF脚本的支持不是很好,这也不能怪pycharm,因为配置RF的插件不给力,没那么多功能,使用起来不太友好
Eclipse:对于Eclipse来说,它的RF插件(RED)比较强大, 既可以支持表格形式编写脚本,又可以使用纯代码的方式编写脚本,支持代码自动补全,高亮显示,最主要一点可以查看所有的关键字的帮助文档,并且对于喜欢直接写RF脚本代码的同学来说,使用起来很友好。
最后喜欢的小伙伴可以点赞收藏加关注哟。今天的文章就分享到这里了哟。
相关推荐
- 盲盒小程序背后的技术揭秘:如何打造个性化购物体验
-
在2025年的今天,盲盒小程序作为一种新兴的购物方式,正以其独特的魅力和个性化体验吸引着越来越多的消费者。这种将线上购物与盲盒概念相结合的应用,不仅为消费者带来了未知的惊喜,还通过一系列技术手段实现了...
- 小程序·云开发已支持单日亿级调用量,接口可用率高达99.99%
-
2019-10-1914:1210月19日,由腾讯云与微信小程序团队联合举办的“小程序·云开发”技术峰会在北京召开。会上,微信小程序团队相关负责人表示“小程序·云开发”系统架构已经支持每天亿级别的...
- 程序员副业开启模式:8个GitHub上可以赚钱的小程序
-
前言开源项目作者:JackonYang今天推荐的这个项目是「list-of-wechat-mini-program-list」,开源微信小程序列表的列表、有赚钱能力的小程序开源代码。这个项目分为两部分...
- 深度科普:盲盒小程序开发的底层逻辑
-
在当下的数字化浪潮中,盲盒小程序以其独特的趣味性和互动性,吸引着众多消费者的目光。无论是热衷于收集玩偶的年轻人,还是享受拆盒惊喜的上班族,都对盲盒小程序情有独钟。那么,这种备受欢迎的盲盒小程序,其开发...
- 微信小程序的制作步骤
-
SaaS小程序制作平台,作为数字化转型时代下的创新产物,不仅将易用性置于设计的核心位置,让非技术背景的用户也能轻松上手,快速制作出功能丰富、界面精美的小程序,更在性能和稳定性方面投入了大量精力,以确保...
- 携程开源--小程序构建工具,三分钟搞定
-
前言今天推荐的这个项目是「wean」,一个小程序构建打包工具。在wean之前,大量小程序工具使用webpack进行打包,各种loader、plugin导致整个开发链路变长。wean旨在解...
- 校园小程序的搭建以及营收模式校园外卖程序校园跑腿校园圈子系统
-
校园小程序的架构设计主要包括云端架构和本地架构两部分。云端架构方面,采用Serverless架构可以降低技术门槛,通过阿里云、腾讯云等平台提供的云服务,可以实现弹性扩容和快速部署。例如,使用云数据库、...
- 盲盒小程序开发揭秘:技术架构与实现原理全解析
-
在2025年的今天,盲盒小程序作为一种结合了线上购物与趣味性的创新应用,正受到越来越多用户的喜爱。其背后的技术架构与实现原理,对于想要了解或涉足这一领域的人来说,无疑充满了神秘与吸引力。本文将为大家科...
- 月活百万的小程序架构设计:流量暴增秘籍
-
从小程序到"大"程序的蜕变之路当你的小程序用户量从几千跃升至百万级别时,原有的架构就像一件不合身的衣服,处处紧绷。这个阶段最常遇到的噩梦就是服务器崩溃、接口超时、数据丢失。想象一下,在...
- 认知智能如何与产业结合?专家学者共探理论框架与落地实践
-
当前,以大模型为代表的生成式人工智能等前沿技术加速迭代,如何将认知智能与产业结合,成为摆在各行各业面前的一个问题。论坛现场。主办方供图7月4日,2024世界人工智能大会暨人工智能全球治理高级别会议在...
- 现代中医理论框架
-
...
- 认知行为(CBT)中的ABC情绪理论
-
情绪ABC理论是由美国心理学家阿尔伯特·艾利斯(AlbertEllis1913-2007)创建的理论,A表示诱发性事件(Activatingevent),B表示个体针对此诱发性事件产生的一些信...
- 说说卡伦霍妮的理论框架,对你调整性格和人际关系,价值很大
-
01自在今天我主要想说下霍妮的理论框架。主要说三本书,第一本是《我们时代的神经症人格》,第二本是《我们内心的冲突》,第三本是《神经症与人的成长》。根据我的经验,三本书价值巨大,但并不是每个人都能读进去...
- 供应链管理-理论框架
-
一个最佳价值的供应链,应该是一个具有敏捷性、适应性和联盟功能(3A)的供应链,其基本要素包括战略资源、物流管理、关系管理以及信息系统,目标是实现速度、质量、成本、柔性的竞争优势。篇幅有...
- 微信WeUI设计规范文件下载及使用方法
-
来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信Web开发量身设计,可以令用户的使用感知...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- MVC框架 (46)
- spring框架 (46)
- 框架图 (58)
- bootstrap框架 (43)
- flask框架 (53)
- quartz框架 (51)
- abp框架 (47)
- jpa框架 (47)
- laravel框架 (46)
- express框架 (43)
- scrapy框架 (52)
- beego框架 (42)
- java框架spring (43)
- grpc框架 (55)
- 前端框架bootstrap (42)
- orm框架有哪些 (43)
- ppt框架 (48)
- 内联框架 (52)
- winform框架 (46)
- gui框架 (44)
- cad怎么画框架 (58)
- ps怎么画框架 (47)
- ssm框架实现登录注册 (49)
- oracle字符串长度 (48)
- oracle提交事务 (47)