Robot Framework是一个由python构建的的开源的自动化测试框架,现在版本还在不停的更新中。由于它开源性,网上有大量的第三方接口和很多资料。下面提供两个比较官方的链接,有兴趣的同学可以直接去看,这篇文章只是我个人的一些总结和理解。
http://robotframework.org/
https://code.google.com/p/robotframework/
几个特点和概念
1. 文件格式和运行环境。
Robot Framework文件格式是txt文件, 因此非常方便编辑,测试人员可以选取自己喜欢的编辑器进行编辑。运行环境只要安装好python和robot的安装包之后就可以方便的用pybot来运行robot的txt 文件,操作非常简单。
2. 语法特性。
Robot Framework是用空格来区分关键字和参数,刚开始会不太习惯,使用IDE工具或者熟练之后会很方便。同时用robot自己提供一些基本的关键字(KeyWork),可以用来做简单的逻辑判断和验证。为了方便非专业编程人员进行测试,这些KW易读性很强,接近自然语言。
3. 框架结构。
Robot Framework是一个关键字+数据混合驱动的自动化框架,测试人员可以根据自己具体项目的需求进行设计。他之所以是一个混合型框架,是因为除了本身关键字驱动的特性,还支持从别的TXT文件引入变量,如果有需要也可以自己写方法去解析别的数据类型文件(XML, excel 等)。很适合大型复杂的项目测试。从这张图可以看到,robot框架本身有很好的分层设计,当然,根据项目需求可以对这个层级进行增加或者减少,比如Test Data这一层可以不用,直接写在robot case里面。最上面一层是数据层,对于大型的项目或者数据驱动的测试用例,测试数据通常会单独存放在文件里,而测试用例里面只用包含测试逻辑,这样方便测试人员进行数据的修改。第二层便是RF框架,其实也就是一些RF自带KW组成的一个框架,还包括自带的log系统和对外扩展的一些接口。第三层是用户自定义库,用户根据自己项目需求可以用python或者别的语言构建自己的测试库。测试工具是测试人员可能用到的第三方的一些工具,比如Selenium工具,安装之后,RF则可以直接拿来用。最下面的就是我们的待测设备了。
【Robot Framework 介绍】总纲