Robot Framework框架介绍

Robot Framework是一款用Python编写的通用型测试框架,具有良好的可扩展性,支持关键字驱动,可以同时测试多种类型客户端(Web,PC,移动端)或者接口,也可以进行分布式测试执行。常用于验收测试和验收测试驱动开发(ATDD)的自动化测试。虽然框架本身是基于Python编写的,但也可以在Jython(Java)和IronPython(.NET)上运行,提供跨平台支持。
Robot Framework 框架是一个通用的应用和技术的独立框架。它有一个高度模块化的架构,如图所示;
在这里插入图片描述

###1.1.1.Robot Framework生态系统

Robot Framework框架具有非常丰富的生态系统,它不仅具有易于使用的表格测试数据规则,可精细的控制关键字,支持行为驱动,提供远程测试执行接口进行分布式测试。这些功能由各种通用测试库,特定测试插件和工具组成。
Robot Framework框架除了自身提供了非常多的基础数据库功能,也支持第三方扩展库,同时提供了非常多的内建工具,扩展接口,方便框架与其他系统进行对接。这些一起构建了一套全面且易于扩展的Robot Framework框架系统。

1.基础库

Builtin:提供内置常用的关键字
Dialogs:提供暂停测试执行以获得用户输入的方法
Collection:提供用于处理Python列表,字典的关键字
OperatingSystem:在Robot Framework:系统中执行各种与操作系统相关的任务
Remote:作为Robot Framework与其他测试库之间的代理,实际运行的测试库可以在不同机器上。
ScreenShot:提供用于捕捉桌面 屏幕截图的基本库。
String:用于生成,修改,验证字符串的库。
Telnet:可以连接Telnet服务器,并在打开的连接上执行命令。
XML:用于生成,修改和验证XML文件的库。
Process:用于在系统中运行过程的库。
DataTime:用于日期和时间转换的库。

2.扩展库

AndroidLibrary:用于Android自动化测试的库,它内部使用的是Calabash Android.
AnywhereLibrary:用于测试单页应用程序(SPA)的库,它内部使用的是Selenium Webdriver和Appium.
AppiumLibrary:用于Android和ios测试的库,它内部使用的是Appium。
ArchiveLibrary:用于处理zip和zar归档的库。
AutoItLibrary:用于Windows GUI的测试库,它内部使用AutoIt作为驱动程序。
DatabaseLibrary:用于数据库测试的库,分为Java和Python两类库,一般默认是基于Python的库。
DiffLibrary:用于两个文件差异比较的库。
DjangoLibrary:Python Web框架Django的库。
FakerLibrary:虚拟测试数据生成器Faker的库。
FTPLibrary:用于Robot Framework测试和FTP服务器的库。
HttpLibrary.HTTP:用于使用请求进行HTTP级别测试的库。
iOSLibrary:用于iOS自动化测试的库,它内部使用的是Calabash iOS.
ImageHorizonLibrary:GUI自动化测试的,基于图像识别的,跨平台的纯Python库。
MongoDBLibrary:使用PyMongo和MongoDB进行交互的库。
MQTTLLibrary:用于测试MQTT代理和应用程序的库。
Rammbock:通用网络协议测试库,提供简单的方式来指定网络数据包,并检测发送和接受数据包的结果。
SikuliLibrary:提供关键字以通过Sikulix测试用户界面。
Selenium2Library:使用Selenium2的Web测试库。
SSHLibrary:通过SSH连接启用在远程计算机上执行的命令,还支持使用SFTP传输文件。
SwingLibrary:使用SwingGUI测试Java应用程序的库

3.内建工具

Rebot:基于XML输出生成日志和报告,将多个输出组合在一起的工具。
Libdoc:用于为测试库和资源文件生成关键字文档的工具。
Testdoc:基于Robot Framework测试用例生成高层次HTML文档的工具。
Tidy:清理和转换Robot Framework测试数据文件格式的工具。

4.编辑器

RIDE:独立的Robot Framework测试数据编辑器。
Atom Plugin:Atom编辑器中的Robot Framework插件。
Eclipse Plugin:Eclipse IDE的Robot Framework插件。
Gedit:Gedit的语法高亮显示。
Robot Plugin For Intelli IDEA:IDEA编辑器的Robot Framework插件。
Sublime Assistant:Sublime编辑器的Robot Framework插件。

5.其他插件

BbBot:用于将Robot Framework测试结果(即output.xml文件)序列化为SQLite数据库的工具。
Fixml:用于修复破坏的Robot Framework输出文件的工具。
Mabot:输出手工测试与Robot Framework兼容格式的报告文件。
Pabot:Robot Framework测试用例并行执行器。
RFDoc:用于存储和搜索Robot Framework测试库和资源文件文档的Web系统。
Robot Corder:通过录制用户交互扫描Chrome浏览器中HTML页面来生成Selenium IDE.
Robot Framework Hub:轻量级Web服务器,能通过浏览器对Robot Framework测试资产进行访问。
Robot Framework Lexer:用于Pygments突出显示Robot Framework语法。
Robot Tool:可以与Robot Framework一起使用的支持工具的集合。
Status Checker:验证执行Robot Framework测试用例时预期的状态和日志消息的工具

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐