robot framework简介

Robot Framework 架构是一个通用的验收测试和验收测试驱动开发的自动化测试框架(ATDD)。如果有使用过python中unittest或者java中junit中的同学会发现robot framework也差不多,也是使用例结构化,通过自动化的手段来测试,并将结果形成html形式的报告。我使用的语言是python,所以就用python来讲下它的使用

1、安装

首先安装robotframework这个第三方库,pip install robotframework,安装完成后会发现scripts这个目录下多了一个pybot.bat这个文件,则说明安装成功,将scripts加入PATH下,在cmd中输pybot,有内容则证明安装成功

2.IDE

robot framework代码在哪里写呢?如果使用python2的同学可以安装Robot Framework RIDE ,但是这个只能用于python2,因为python2才支持wxpython,我使用的是py3,所以只好放弃了,可以选择Sublime text3,vim,或者直接用Notepad ++

3.简单的例子

如上图所示,Test cases表示以下是测试用例,test rf 是用例名称,log等同于print,注意,log之前有四个空格,后面也是,用于分隔关键字和字符串。

4.运行

将上面的文件保存为example.robot,在cmd中进入文件目录,输入pybot example.robot,如下图所示

证明全部成功,会产生三个文件,output.xml,log(网页形式),report(网页形式)

output.xml 记录的测试结果是 XML 文件。根据特定的需要可以编写脚本读取 XML 文件并生成特定的测试报告。

log.html 会记录 Robot Framework 运行的每一步操作,主要用于编写测试脚本的过程中查看。

report.html 为测试报告,整理性的展示测试用例的运行情况。

5.语法

robotframework的语法和python大不相同,以下列出一些:

造成这些差异的原因主要是robotframework是关键字驱动,关键字也可以像py函数一样自己定义

6.第三方块

robotframework之所以可以进行自动化测试主要是用许多第三方的库,如下所示:

  • Web 自动化测试:SeleniumLibrary,Selenium2Library,Selenium2Library for Java、watir-robot 等。

  • Windows GUI 测试:AutoItLibrary。

  • 移动测试:Android library、iOS library、AppiumLibrary 等。

  • 数据库测试:Database Library (Java)、Database Library (Python)、MongoDB library 等。

  • 文件对比测试:Diff Library。

  • HTTP 测试:HTTP library (livetest)、HTTP library (Requests)等。

那如何声明及调用呢?

这是一个利用seleniumLibrary进行百度搜索的自动化例子,先在settings中声明调用的Library,再在用例中使用library中的关键字来测试,学过selenium的同学会感觉似曾相识,具体的关键字可以自行百度

robotframework中可以用的自动化框架比较多,但是对于不了解其中关键字的同学可能需要花时间来学习,这只是个入门,其中还有许多精妙的语法,Robot Framework 用的好,Python 少不了!所以,我的建议是要想用好 Robot Framework 必须要学习和掌握 Python 语言。

原文地址:https://www.cnblogs.com/diwangguilai/p/8473437.html