Robot Framework是什么?
Robot Framework是一个基于python的,可扩展的关键字驱动的自动化框架,可用于验收测试,验收测试驱动开发(ATDD),行为驱动开发(BDD)和机器人流程自动化(RPA)。
它可以用于分布式、异构环境,在这些环境中,自动化需要使用不同的技术和接口。
框架周边有一个丰富的生态系统,由作为单独项目开发的各种通用库和工具组成。关于Robot Framework及其生态系统,请看http://robotframework.org。
RF是在 Apache License 2.0 下发布的开源软件。它的发起人是RF基金会。
注意:
在RF3.1中添加了官方RRA支持。本用户指南仍主要讨论如何创建测试、测试数据和测试库,但在创建任务时也适用相同的概念。
Robot Framework能做什么?
- 启用易于使用的表格语法,用于以统一的方式创建测试用例。
- 提供从现有关键字创建可重用的高级关键字的能力。
- 提供基于HTML格式易于阅读的结果报告和日志。
- 与平台和应用程序无关。
- 提供一个简单的库API,用于创建可使用python或java实现的自定义测试库。
- 提供命令行接口和基于XML的输出文件,用于集成到现有的构建基础结构(持续集成系统)中。
- 提供Selenium的支持,用于做web测试,Java界面测试,运行进程,Telnet,SSH等等。
- 支持创建数据驱动测试用例。
- 内置变量支持,特别适用于不同环境下的测试。
- 提供标记以便分类和选择要执行的测试用例。
- 支持与源代码管理的轻松集成:测试套件只是可以使用生产代码进行版本控制的文件和目录。
- 提供测试用例和测试套件级别的启动和销毁。
- 模块化体系结构甚至支持为具有多个不同接口的应用程序创建测试。
Robot Framework体系结构
RF是一个通用的,与应用和技术无关的框架。它具有高度模块化的体系结构,如下图所示:
测试数据采用简单、易于编辑的表格样式。当RF启动时,它处理数据、执行测试用例并生成日志和报告。核心框架对被测目标一无所知,与它的交互由库处理。库可以直接使用应用程序接口,也可以使用低级测试工具作为驱动程序。
Robot Framework长什么样?
以下截图展示了测试数据、创建的测试报告和日志的例子。
Robot Framework从哪里能获得更多的信息?
项目页
要找到更多关于RF及其周边丰富生态系统的信息,一个重要的地方是http://robotframework.org。RF本身托管在github上。
邮件列表
这里有几个RF邮件列表,可以询问和搜索更多信息。邮件列表档案对每个人(包括搜索引擎)开放,每个人也可以自由加入这些列表。不过,只有列表成员才能发送邮件,为了防止垃圾邮件,新用户会被审核,这意味着在第一封邮件通过之前可能需要一点时间。不要害怕将问题发送到邮件列表,但记住如何以聪明的方式提问(How To Ask Questions The Smart Way)。
robotframework-users
关于所有RF相关问题的一般性讨论。疑问和问题可以发送到此列表。也用于所有用户的信息共享。
robotframework-announce
一个只有公告的邮件列表,只有版主才能发送消息。所有公告也会发送到robotframework-users邮件列表,因此不需要同时加入这两个列表。
robotframework-devel
RF开发探讨。
本篇介绍了Robot Framework的用途及框架,下一篇将介绍如何安装。