Robot Framework是一个基于Python可扩展地关键字驱动的测试自动化框架,使用Apache License 2.0,由Robot Framework Foundation开发和赞助。Robot Framework被广泛地使用在端到端地验收测试以及ATDD(acceptance-test-driven development )中,生态体系非常丰富,更详细的信息可以参看http://robotframework.org。本文将简单介绍如何安装Robot Framework以及运行第一个Hello World的例子。
为甚麽使用Robot Framework
有很多理由使得Robot Framework非常受欢迎,比如:
- 支持简单易用的表格型语法,使得可以用统一方式创建测试用例
- 提供可以复用既存的关键字的功能
- 提供HTML的简单易读的报表和日志结果文件
- 平台和应用相互独立
- 提供简单的Libary API,可以使用Ptyhon或者java进行实现
- 提供命令行接口也XML格式的输出文件,非常容易进行持续集成
- 支持Selenium,Java Gui测试,Telnet,SSH等
- 支持创建数据驱动的测试用例
- 变量的内建支持,尤其是不同测试环境下的测试
- 提供test case和test suite级别的setup和teardown
Robot架构
Robot是一个通用的测试框架,解耦做的很好,虽然很简单,整体的架构如下所示:
安装前提
因为Robot是基于Python进行开发的,使用Python2还是Python3是一个需要选择的问题,python2是在2010年发布的,目前稳定版本2.7.5,python2会支持到2020年,至于更多的区别,可以参看如下文章以决定你的选择。
项目 | 详细信息 |
---|---|
Python2还是Python3 | https://wiki.python.org/moin/Python2orPython3 |
因为没有考虑到会用到比较新的python的功能,本文的安装采用目前稳定的Python2。
[root@liumiaocn ~]# python --version
Python 2.7.5
[root@liumiaocn ~]#
安装PIP
robot的安装有很多方式,为了避免第一个HelloWorld花费太多时间,果断采取PIP直接安装的方式。
[root@liumiaocn ~]# yum install epel-release
Loaded plugins: fastestmirror
...
Installed:
epel-release.noarch 0:7-9
Complete!
[root@liumiaocn ~]#
[root@liumiaocn ~]# yum -y install python-pip
Loaded plugins: fastestmirror
...
Installed:
python2-pip.noarch 0:8.1.2-5.el7
Dependency Installed:
python-backports.x86_64 0:1.0-8.el7 python-backports-ssl_match_hostname.noarch 0:3.4.0.2-4.el7
python-setuptools.noarch 0: