在很多人的认知里,做自动化就必须会代码,事实上,不用会代码也能做自动化。
啥?不能写代码也能做自动化?是哒,本篇来为你揭晓一款自动化集成框架RobotFramework…
文章图片
一. RF是什么 RF是一款基于Python编程语言设计的、可扩展的、关键字驱动模式的测试自动化框架,具备良好的可扩展性,可以通过XML-RPC服务扩展支持其他常用编程语言,可以同时测试多种类型的客户端或接口,可以支持分布式测试执行。该框架特点如下:
- 易于使用,采用表格输入语法及统一的测试用例(Test Case,也叫测试案例)格式 重用性好,可以利用现有关键字来组合新的用户自定义关键字
- 支持资源文件,支持多种变量类型,包括字符串变量、List列表变量、Dictionary字典变量等
- 测试用例执行结果报告和日志采用HTML格式,易于阅读和邮件转发 提供标签以分类来选择将被执行的测试用例,使得测试用例的选择更加灵活
- 支持Web界面测试、Web接口服务测试、GUI测试、多种终端测试 支持多种数据库的操作,包括常用的关系型数据库、非关系型数据库
- 易于扩展自定义的Lib库,可以通过Python或Java等其他语言来动态扩展Lib库
- 集成了很多流行的自动昂华测试工具,如Appium、Selenium等
- 通过Jthon的方式,使得以Python为主的RF自动化测试框架无缝地与Java语言进行完美集成,也可通过XML-RPC远程协议来支持Java或C++等语言。
- 在RF中,使用Python实现了自动化测试用例编写的客户端RIDE,使用RIDE可以非常简单地完成自动化测试用例的编写,也可以使用RIDE完成用户层面的关键字API的封装,使不懂任何编程的人也可以封装自己的API。
- 【软件测试|自动化测试也可以不写代码(今天就教你)】Eclipse plugin:RF为EclipseIDE开发工具提供的插件,是用户可以再Eclipse上编写自动化测试用例,GitHub地址为:Home · NitorCreations/RobotFramework-EclipseIDE Wiki
- Robot Plugin for InteliJ IDEA:和Eclipse Plugin类似,是为InteliJ IDEA开发工具提供的插件,是用户可在InteliJ IDEA编写自动化测试用例,下载地址为:Robot Plugin - IntelliJ IDEs Plugin | Marketplace
- Jenkins plugin:在Jenkins上使用的插件,这个插件可以使RF完美地集成在主流的持续集成工具Jenkins上,插件地址:https://wiki.jenkins.io/display/jenkins/robot+framework+plugin
- Maven plugin:RF提供的Maven插件,下载地址:Single Page Apps for GitHub Pages
- Ant task:这是为另一个打包工具Ant听过的执行插件,使RF可以通过Ant的方式运行,下载地址:http://code.google.com/p/robotframework-ant
- Pabot:RF提供的并发执行器,即多线程并发执行模式,可以在win的cmd中执行pip install -U robotframework-pabot进行安装,也可以在Github上下载:https://githua.com/mkorpale/pabot,然后离线安装
- Atom plugin:RF为支持Atom而开发的插件,下载地址:language-robot-framework
Dialogs:提供了暂停测试执行和从用户的输入方式。
Collections:提供一组关键词处理Python列表和字典。
OperatingSystem:允许执行各种操作系统相关的任务。允许执行各种操作系统相关的任务,使各种操作系统相关的任务在robotframework正在运行的系统中执行。
Remote:远程库接口的一部分。没有自己的任何关键字,作为robotframework和测试库之间的代理的特殊库。实际测试库可以在不同的机器上运行,可以使用任何编程语言支持XML-RPC协议的实现。
Screenshot:提供关键字来捕获和存储桌面的截图。
String:用于处理字符串并验证它们的内容的库,用于生成、修改和验证字符串
Telnet: 支持连接到Telnet服务器上打开的连接执行命令 。
XML:用于生成、修改和验证XML文件的库。
Process:系统中运行过程的库。
DateTime:日期和时间转换的库,支持创建和验证日期和时间值以及它们之间的计算
四. 不同应用的自动化测试需要响应的测试库 seleniumlibrary:Web测试库,内部使用比较流行的selenium工具。利用早期的selenium1.0和本身已经过时。
selenium2library:使用selenium2的Web测试库。替换了大部分老的seleniumlibrary。
appiumlibrary:Android和iOS测试库,内部使用的是appium
MongoDB library:使用pymongo和MongoDB交互的库。(MongoDB是一个基于分布式文件存储的数据库)
Database Library (Java):基于Java的数据库测试库。也可使用Jython和Maven central.
Database Library (Python):基于Python数据库测试库。支持任何Python解释器,包括Jython。
autoitlibrary:Windows的GUI测试库,使用AutoIt的免费工具作为驱动。
HTTP library (livetest):内部使用LiveTest工具的HTTP测试的库。
HTTP library (Requests):内部使用request工具的HTTP测试的库。
更多详见:Robot Framework
五. RF测试环境安装所需软件 Python
Robot Framework
wxPython 2.8
集成开发环境RIDE
Selenium Library
六. RF自动化测试项目创建 一个RF项目其实和我们所熟知的单元测试项目结果目录基本是一样的,也包含了测试套件和测试用例的概念。在Win的cmd中进入到Ride.py目录输入Python ride.py打开RIDE,File—New Project,得到如下类型选择框:
- Name:项目名称
- Type:项目存储方式:文件形式或目录形式,一般是目录形式
- Format:文件促成你格式,提供了ROBOT(默认存储格式)、TXT、TSV、HTML四种格式
右键创建的测试套件—右键—New Test Case选项,输入用例名称,即可。
最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!
文章图片
这些资料,对于想转行做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……
如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。
敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。
自学推荐B站视频: 零基础转行软件测试:38天自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!
自动化测试进阶:已上岸华为,涨薪20K,2022最适合自学的python自动化测试教程,自己花16800买的,无偿分享
文章图片
推荐阅读
- 软件测试需要学习什么 一般学好第一阶段找工作没问题
- 程序员|19个程序员接私活平台汇总升级版!你有技术就有钱!
- 个人|程序员如何规划自己的职业生涯!
- 程序员|要啥女朋友(大神教你用Python人工智能制作AI机器人)
- 几种绘制时间线图的方法
- 用 Python 爬取股票实时数据
- 程序人生|程序员在写作这条路上到底能走多远()
- java|我常用的4个备份工具
- 解读三大财务报表