@snakeshiy
2018-10-24T15:52:45.000000Z
字数 2215
阅读 2097
RobotFramework 自动化测试
Robot Framework(以下简称RF)是一款开源自动化测试框架,支持关键字驱动,有丰富的扩展库,可以对多端和接口进行测试
- 测试脚本可读性强,对中文的支持较好
- 官方提供的扩展库非常丰富,并且支持自定义的Python和Java库
- 测试报告和日志结构清晰,容易阅读和定位问题
- 支持分布式测试执行
- 提供二次开发的扩展能力

RF支持的一些常用的扩展库,如:
- PyCharm对Python的集成开发环境更强大
- PyCharm RF Plugin也提供了对RF良好的支持
- 更好地融入CI/CD体系中
pip install robotframework
工欲善其事,必先利其器。在Pycharm中开发RF脚本,语法高亮和提示功能必不可少。我们在 PyCharm -> Preferences -> Plugins -> Browse repositories 中查找并安装
Robot Framework Support
IntelliBot
安装完这两个插件后,重启PyCharm,然后我们可以尝试在PyCharm项目中新建一个robot文件。
RF文件内容主要由四大块组成:Settings、Variables、Keywords、Test Cases
*** Settings ***Documentation This is a demo test suiteResource Flow/order_flow.robotLibrary Selenium2LibrarySuite Setup log 初始化-测试用例集Suite Teardown log 清除化-测试用例集Force Tags demo_suite
Settings —— 配置信息,可以定义说明性文档、引用库和资源文件、标签以及定义Test Suite和Test Case属性等等。
在Settings里常用的一些关键字有:
Library —— 引入函数库
Resource —— 引入资源文件、Robot文件等
Documenation —— 对测试用例集进行描述
Suite Setup —— 在测试用例集运行前先运行,用于初始化
Suite TearDown —— 在测试用例集运行后再运行,用于数据清除
Test Setup —— 默认在每个用例前执行
Test TearDown —— 默认在每个用例后执行
Test Template —— 默认对每个用例设置测试模板
*** Variables ***${const_var} ROBOT_FRAMEWORK # 普通变量@{list_var} this is a demo # 列表变量&{dict_var} name=Robot address=road phone=1345 # 字典变量
Variable —— 定义变量,上面的示例代码中,包含了常见的三种类型变量的定义方式
*** Keywords ***加法[Arguments] ${arg1}=0 ${arg2}=0${result} add ${arg1} ${arg2}[Return] ${result}
Keywords —— 用户定义的关键字,类似于一个函数,可以通过[Arguments]为关键字定义参数及默认值,内部逻辑中调用了一个python自定义的add函数,通过[Return]将结果返回
*** Test Cases ***加法计算[Tags] demo1${result} 加法 2 3should be equal ${result} ${5}
Test Cases —— 具体的测试用例描述及操作步骤,可以引入关键字、测试数据和断言对逻辑进行验证。
在Test Cases中我们还可以对当前测试用例进行配置,主要有以下几种用法:
[Documentation] —— 对用例进行描述
[Tags] —— 对用例进行分类标签
[Setup] —— 在用例执行前先执行,主要用于初始化工作
[Teardown] —— 在用例执行后再执行,主要用于数据清理工作
[Template] —— 引用关键字作为测试模板,用于数据驱动的场景
[Timeout] —— 对用例进行超时时间设置
常用的几种执行方式:
pybot -P . -i demo1 .
pybot -P . -t '加法计算' .
pybot -P . -s 'demo_test_suite' .
运行结束后,右键点击根目录下的 log.html 文件,选择 Open in Browser -> Chrome,即可查看测试报告与测试日志。
注意: 如果Chrome浏览器打不开报告,需要在应用商店搜索 Disable Content-Security-Policy 的插件并安装
作者 小肥羊
2018 年 10月 24日