一、简介
- 一款Python编写的通用的自动化测试框架
- 具备良好的可扩展性
- 支持关键字驱动
- 可以同时测试多种类型的客户端或者接口
- 可以进行分布式测试
- 主要用于验收测试和验收开发(ATDD)
二、特点
- 易于使用,采用表格式语法,统一测试用户格式
- 重用性好,可以采用现有关键字来组合新关键字
- 支持变量
- 支持创建基于数据驱动的测试用例
- 结果报告和日志采用HTML的格式,易于阅读
- 提供标签以分类和选择将被执行的测试用例
- 平台、应用无关
- 功能全面、支持协议级接口的测试,GUI界面的测试,数据库的测试,移动APP的测试,命令行测试等
- 易于扩展,提供了简单的api,用户可以自定义的基于Python或者Java的测试库
- 易于集成,提供了命令行接口和基于xml的输出文件
- 易于与版本管理集成(Jenkins)
三、架构
四、安装
- 首先配置Python环境
- 安装robotframework
pip install robotframework
- 安装ride(查看版本 robot --version)
pip install robotframework-ride
- 操作selenium需要安装的库
pip install robotframework-SeleniumLibrary
- 操作request需要安装的库
pip install robotframework-requests
- 操作数据库需要安装的库
pip install robotframework-Database Library
- 操作AppiumLibrary库需要安装
pip install robotframework-AppiumLibrary
- 中文支持问题(针对ride 1.5.2.1)
修改encodingsniffer.py文件,文字在([自动电脑Python安装路径]\Lib\site-packages\robot\utils)目录下
if UNIXY:
DEFAULT_CONSOLE_ENCODING = 'UTF-8'
DEFAULT_SYSTEM_ENCODING = 'UTF-8'
else:
DEFAULT_CONSOLE_ENCODING = 'cp437' #将437改为936
DEFAULT_SYSTEM_ENCODING = 'cp1252'
- 修改testrunner.py文件,此文件在([自动电脑Python安装路径]\Lib\site-packages\robotide\contrib\testrunner)目录下
def pop(self):
result = ""
try:
myqueuerng = xrange(self._queue.qsize())
except NameError: # py3
myqueuerng = range(self._queue.qsize())
for _ in myqueuerng:
try:
result += encoding.console_decode(self._queue.get_nowait(),
encoding.OUTPUT_ENCODING if IS_WINDOWS
else 'UTF-8') ==将utf-8 改为gbk
except Empty:
pass
return result
- 启动
命令行:
Python [自动电脑Python安装路径]\Scripts\ride.py
创建桌面快捷方式
Python [自动电脑Python安装路径]\Scripts\ride_postinstall.py -install
生成的图标