开源自动化测试利器:Robot Framework
Robot Framework 是一个用于实现自动化测试和机器人流程自动化(RPA)的开放源代码框架。它由一个名为 Robot Framework Foundation 的组织得到推广,得到了多家领军企业在软件开发中的广泛应用。框架以其开放性和灵活性为特点,能够无缝整合各种其他工具,无论团队规模大小,均无需承担额外许可成本。
该 框架 特点在于其使用简洁,采用了接近自然语言的关键字。此外,它具备强大的扩展性,可以很容易地与 Python、Java 或其他语言编写的各种库相结合。Robot Framework 摈弃了繁复的环境配置,拥有一套独立的库和工具组成的生态圈,经常作为单独项目进行维护和更新。
使用 Robot Framework 进行接口自动化测试的项目结构
本项目的技术栈包含:
- Robot Framework
- RequestsLibrary
- HttpLibrary.HTTP
以下是项目结构的示意图:
项目细节概述
我们采用了测试的层级化设计,即数据和逻辑的分离。这表现在:
- 项目目录结构的明确分层
- 将接口用例、数据和业务逻辑独立处理
- 测试用例 中可动态传递多个参数,并可自定义执行序列
目录结构详解
- 公共配置:这里储存共享配置文件、常用方法和函数
- 基础模块:包罗各类封装好的请求方法和工具函数
- 功能组件:存放定制化的请求功能组件
- 主干用例&项目用例:放置针对接口的测试用例
安装 Robot Framework
安装 Robot Framework 可直接通过 pip 安装,如下所示:
bash
复制代码
pip install robotframework
安装依赖库
项目需要安装几个关键的库,以支持接口自动化测试,具体命令为:
复制代码
pip install robotframework-requests pip install robotframework-jsonlibrary pip install robotframework-databaselibrary
这里,robotframework-requests
负责执行 HTTP 请求,robotframework-jsonlibrary
用于处理 JSON 数据,而 robotframework-databaselibrary
用于实现数据库交互。
封装请求方法
以下是请求方法的示例封装:
bash
复制代码
*** Settings *** Library RequestsLibrary Library Collections Library HttpLibrary.HTTP Resource ../commons/config_index.txt *** Keywords *** Create Post Request [Arguments] ${base_url} ${endpoint} ${parameters} ${content_type} ${headers} [Documentation] 封装 POST 请求操作 ${data} Create Dictionary FOR ${key} IN @{parameters.keys()} set to dictionary ${data} ${key} ${parameters['${key}']} END create session api_session ${base_url} ${response}= post request api_session ${endpoint} ${content_type}=${data} headers=${headers} log to console ${response.json()} [Return] ${response.json()}
创立新的测试案例
测试用例的创建过程如下:
输入相应的测试信息:
发出请求
在 Robot Framework 中的首要步骤是创建 Session,它将允许我们维护同一会话中多个请求的连贯性和状态,如用户登录态,以及设置默认的请求头和cookie。
在会话界面中填入请求信息:
填写完毕后,便可发起请求。
或者选择在 Session 基础上构建请求。
总结
Robot Framework 通过其开放性和易于扩展的特性提供了强大的自动化测试能力。不仅可以简化测试流程,还能提高测试准确性和效率。通过使用 Robot Framework,无论是接口测试、UI自动化测试 还是复杂的业务流程自动化,都能够以一种高效且成本效益高的方式实现。引入该框架无疑是为团队带来了技术的益处,同时也支持了快速迭代和产品质量的持续提升。
总结
如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入我们,加入方式在文章的最后面
自动化测试相关教程推荐:
2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili
测试开发相关教程推荐
2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili
postman/jmeter/fiddler测试工具类教程推荐
讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili
2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili
2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili
总结:
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步
在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。
我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,
测试开发视频教程、学习笔记领取传送门!!