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 介绍】总纲的更多相关文章

  1. 《转》Robot Framework 的安装配置和简单的实例介绍

    Robot Framework 介绍 Robot Framework 是一款基于 Python 的功能自动化测试框架.它具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进 ...

  2. Robot Framework 的安装配置和简单的实例介绍

    Robot Framework 介绍 Robot Framework 是一款基于 Python 的功能自动化测试框架.它具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进 ...

  3. 【Robot Framework】robot framework 学习以及selenium、appnium、requests实践(一)

    话说之前自己写了个selenium的自动化框架,然后又研究了下RF,觉得RF这种基于关键字驱动的框架更为容易上手,当然在做一些比较繁琐的验证时,似乎还不是太灵活,不如自己写几行python来的实惠(也 ...

  4. Robot Framework测试框架用例脚本设计方法

    Robot Framework介绍 Robot Framework是一个通用的关键字驱动自动化测试框架.测试用例以HTML,纯文本或TSV(制表符分隔的一系列值)文件存储.通过测试库中实现的关键字驱动 ...

  5. Robot Framework 安装及环境配置

    Robot Framework 安装及环境配置 Robot Framework 介绍 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以 ...

  6. 【Robot Framework】---- Robot Framework简介、特点、RIDE

    Robot Framework简介.特点.RIDE 一.简介.特点. Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型 ...

  7. Robot Framework操作

    Robot Framework 介绍 RobotFramework是一款基于python的开源自动化测试框架,遵守Apache License 2.0协议,在此协议下所有人都可以免费开发和使用.因为R ...

  8. robot_framewok自动化测试--(1)Robot Framework 环境搭建及常见日志问题解决办法

    一.Robot Framework 介绍 Robot Framework 的架构是一个通用的验收测试和验收测试驱动开发的自动化测试框架(ATDD).它具有易于使用的表格来组织测试过程和测试数据. 它使 ...

  9. Robot framework(RF) Builti,Screenshot和Collections标准库介绍

    1.1  Builti标准类库 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习Robot Framework.虽然通过RIDE 提供“填表”一 ...

随机推荐

  1. Raising Modulo Numbers(POJ 1995 快速幂)

    Raising Modulo Numbers Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 5934   Accepted: ...

  2. USB CCID "复杂"命令拾零?

    本文记录 USB CCID 标准中几个"复杂"的命令,复杂在于在这些命令身上花的时间较之简单的命令多许多或者是理解的时间比较晚,可能就是刚才.主要有以下几条:ccid_T0APDU ...

  3. C语言随笔_类型声明

    有位同学说,“老师,我运行如下代码,结果报错了” #include <iostream.h>   int main(){ char c,  int b; return 0; } 报错结果是 ...

  4. 记事本写hello world_Java

    1 新建记事本,重命名为hello.java 2 打开hello.java,编辑并保存 class Hello { public static void main(String[] args) { S ...

  5. 【转】RTSP流理解

    rtsp是使用udp还是tcp,是跟服务器有关,服务器那边说使用udp,那就使用udp,服务器说使用tcp那就使用tcp rtsp客户端的创建: 1.建立TCP socket,绑定服务器ip,用来传送 ...

  6. array_multisort 关联(string)键名保持不变,但数字键名会被重新索引。

    $array = [ '2' => [ 'title' => 'Flower', 'order' => 3 ], '3' => [ 'title' => 'Rock', ...

  7. java基础之集合List-ArrayList、LinkedList、Vector的差别

    PS:本篇博客主要參考jdk的底层源代码.而非自己动手写代码. 请问ArrayList.LinkedList.Vector的差别 ①ArrayList底层实际上是採用数组实现的(而且该数组的类型的Ob ...

  8. Android Project from Existing Code 生成 R 文件错误、失败等问题解决办法 - 持续更新

    Android Project from Existing Code 生成 R 文件错误.失败等问题解决办法 - 持续更新 git  上的项目,pull下来之后用Android Project fro ...

  9. Qt 信号与槽

    Qt信号与槽的理解 信号和槽机制是 QT 的核心机制,要精通 QT 编程就必须对信号和槽有所了解.信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性,也是 QT 区别于其它工具包的重 ...

  10. linux下Mysql 的安装、配置、数据导入导出

    MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),虽然功能未必很强大,但因它的免费开源而广受欢迎. 这次,接着上一篇<CentOs minimal安装和开发环境部署>,讲下L ...