Robot Framework:通用的自动化测试框架
Robot Framework 在 GitHub 上已经拿到 11,697 个 Star。
这是一个通用的开源自动化框架,核心场景是验收测试、验收测试驱动开发(ATDD)和机器人流程自动化(RPA)。用纯文本语法写用例,通过扩展库来覆盖不同的技术栈。
1、这工具是干嘛的
就干一件事:用简洁的纯文本语法,把自动化测试和流程自动化的需求串起来。
Web 测试、API 测试、数据库测试、桌面应用测试都能覆盖。框架本身不绑定操作系统或具体应用,底层基于 Python,扩展也用 Python 写。
测试用例采用关键字驱动的方式,写成接近自然语言的结构。不懂代码的人也能看明白步骤在干什么。下面是一个简单的登录测试用例:
*** Settings ***
Documentation A test suite with a single test for valid login.
...
... This test has a workflow that is created using keywords in
... the imported resource file.
Resource login.resource
*** Test Cases ***
Valid Login
Open Browser To Login Page
Input Username demo
Input Password mode
Submit Credentials
Welcome Page Should Be Open
[Teardown] Close Browser
每个步骤都是一个关键字,背后对应具体的实现逻辑。测试层只描述流程,不写实现细节。

2、为什么选它
做过自动化测试的人都知道,工具选型时最怕两头不靠:要么太简单,复杂场景撑不住;要么太重,小项目用不上。
Robot Framework 卡在中间这个位置。核心很轻,就一个解析器和执行引擎,需要什么功能就装什么库。Web 测试用 SeleniumLibrary,API 测试用 RequestsLibrary,数据库测试用 DatabaseLibrary。用不上的不装,不拖慢启动速度。
它的生态已经发展了很多年,各种通用库和工具作为独立项目维护,按需引入。非营利的 Robot Framework Foundation 持续赞助开发和维护,社区也比较活跃。

3、安装和使用
安装需要 Python 3.8 或更高版本。装好 Python 和 pip 后,一行命令:
pip install robotframework
执行测试用例通过 robot 命令:
robot tests.robot
robot --variable BROWSER:Firefox --outputdir results path/to/tests/
跑完后会生成 XML 格式的结果。如果要合并多个输出文件或者做后处理,用 rebot:
rebot --name Example output1.xml output2.xml
跑 robot --help 和 rebot --help 能看到完整的命令行参数。
4、适合哪些人
- 需要做验收测试或 ATDD 的团队,业务人员和技术人员能一起读用例
- 做 RPA 流程自动化的工程师,用关键字拼装业务流
- 已经在用 Python,想找一个轻量级自动化框架的开发者
这个框架不是全能型选手,但在测试自动化这个细分领域,它的简洁和扩展性已经帮很多人省下了不少时间。
Python,想找一个轻量级自动化框架的开发者
这个框架不是全能型选手,但在测试自动化这个细分领域,它的简洁和扩展性已经帮很多人省下了不少时间。
1万+

被折叠的 条评论
为什么被折叠?



