Robotframework 的简介及其工作原理~

下面通过官网和网上资料来简单介绍下Robotframework及其工作原理。

官方说明:

Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It has easy-to-use tabular test data syntax and it utilizes the keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented either with Python or Java, and users can create new higher-level keywords from existing ones using the same syntax that is used for creating test cases.

翻译如下:

Robot Framework是用于验收测试和验收测试驱动开发(ATDD)的通用测试自动化框架。 它具有易于使用的表格测试数据语法,并使用关键字驱动的测试方法。 它的测试功能可以通过使用Python或Java实现的测试库进行扩展,用户可以使用与创建测试用例相同的语法,从现有的关键字创建新的更高级别的关键字。

我的理解如下:

Robot Framework是一个完全基于关键字测试驱动的框架,它即能够基于它的一定规则,导入你需要的测试库(例如:其集成了selenium的测试库,即可以理解为操作web控件的测试底层库),然后基于这些测试库,你能应用HTML、TXT等文档形式编写自己的关键字(这些关键字即你的库组成),之后,再编写测试用例(测试用例由测试关键字组成)进行测试。例如:一个简单的登陆测试由:登陆+输入密码+登出三个关键字组成,也可以由一个关键字登陆组成,关键字颗粒的大小可以自行定制。

主要包括:

内置标准库,如BuiltIn

外部(第三方)扩展库,如Selenium2Library

关键字,主要包括总是可用的内置关键字,来自导入测试库的库关键字和用户在创建测试用例时使用表格语法创建的用户关键字

创建测试,主要包括测试项目、套件、用例

运行测试

生成测试报告,会生成三个文件:Output.xml、Log.html、Reprot.html,其中Log.html主要用于展示测试脚本的执行过程,report.html为测试报告,展示测试用例的运行情况及结果。

工作原理:

Robot Framework的基本运行流程如下:

1、Robot开始测试是从cmd输入命令,初始运行程序接收命令字符(主要是用txt或html写的测试用例集)

2、接收之后,robot先生成初始化全局变量配置,主要是定义一系列的字段名称和文件名称(例如:日志文件名称等)(由settings.py中的类完成)

3、然后,开始解析用例文件,生成数据对象,数据对象中包含了测试集的各种数据,例如:测试用例集名称、各个测试用例名称、各个关键字名称等

4、再将测试数据对象传送给测试集合类处理,生成测试集suite对象

5、紧接着运行suite中的用例测试,然后调用关键字,找到关键字对应的库文件,进行操作

6、将每一个操作和结果都写在输出的xml文件中(有专门调用对输出xml进行操作的类)

7、最后待测试完成后,调用转换类将xml文件转换成相应的HTML日志报告,测试完成。

从Robot Framework的工作原理上,我们可以很好的学习到关键字测试驱动思想和数据测试驱动思想的应用。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
钱钱钱端9 小时前
【压力测试】如何确定系统最大并发用户数?
自动化测试·软件测试·python·职场和发展·压力测试·postman
测试199810 小时前
外包干了2年,快要废了。。。
自动化测试·软件测试·python·面试·职场和发展·单元测试·压力测试
mingzhi6111 小时前
渗透测试-快速获取目标中存在的漏洞(小白版)
安全·web安全·面试·职场和发展
AI_小站15 小时前
LLM——10个大型语言模型(LLM)常见面试题以及答案解析
人工智能·程序人生·语言模型·自然语言处理·大模型·llm·大模型面试
华东同舟求职15 小时前
舜宇光学科技入职测评:北森商业推理40分钟28题真题解析、网盘资料下载、答题技巧
经验分享·科技·职场和发展·求职招聘
qq_4337169516 小时前
测试分层:减少对全链路回归依赖的探索!
自动化测试·软件测试·功能测试·测试工具·回归·pytest·postman
山里灵活的狗_16 小时前
蓝桥杯练习笔记(二十-日期问题)
笔记·职场和发展·蓝桥杯
qq_4337169517 小时前
Postman断言与依赖接口测试详解!
自动化测试·软件测试·功能测试·测试工具·mysql·接口测试·postman
超栈17 小时前
蓝桥杯-网络安全比赛题目-遗漏的压缩包
前端·网络·sql·安全·web安全·职场和发展·蓝桥杯
良技漫谈19 小时前
Rust移动开发:Rust在iOS端集成使用介绍
后端·程序人生·ios·rust·objective-c·swift