下面通过官网和网上资料来简单介绍下Robotframework及其工作原理。

官方说明:

Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It has easy-to-use tabular test data syntax and it utilizes the keyword-driven testing approach. Its testing capabilities can be extended by test libraries implemented either with Python or Java, and users can create new higher-level keywords from existing ones using the same syntax that is used for creating test cases.

翻译如下:

Robot Framework是用于验收测试和验收测试驱动开发(ATDD)的通用测试自动化框架。 它具有易于使用的表格测试数据语法,并使用关键字驱动的测试方法。 它的测试功能可以通过使用Python或Java实现的测试库进行扩展,用户可以使用与创建测试用例相同的语法,从现有的关键字创建新的更高级别的关键字。

我的理解如下:

Robot Framework是一个完全基于关键字测试驱动的框架,它即能够基于它的一定规则,导入你需要的测试库(例如:其集成了selenium的测试库,即可以理解为操作web控件的测试底层库),然后基于这些测试库,你能应用HTML、TXT等文档形式编写自己的关键字(这些关键字即你的库组成),之后,再编写测试用例(测试用例由测试关键字组成)进行测试。例如:一个简单的登陆测试由:登陆+输入密码+登出三个关键字组成,也可以由一个关键字登陆组成,关键字颗粒的大小可以自行定制。

主要包括:

内置标准库,如BuiltIn

外部(第三方)扩展库,如Selenium2Library

关键字,主要包括总是可用的内置关键字,来自导入测试库的库关键字和用户在创建测试用例时使用表格语法创建的用户关键字

创建测试,主要包括测试项目、套件、用例

运行测试

生成测试报告,会生成三个文件:Output.xml、Log.html、Reprot.html,其中Log.html主要用于展示测试脚本的执行过程,report.html为测试报告,展示测试用例的运行情况及结果。

工作原理:

Robot Framework的基本运行流程如下:

1、Robot开始测试是从cmd输入命令,初始运行程序接收命令字符(主要是用txt或html写的测试用例集)

2、接收之后,robot先生成初始化全局变量配置,主要是定义一系列的字段名称和文件名称(例如:日志文件名称等)(由settings.py中的类完成)

3、然后,开始解析用例文件,生成数据对象,数据对象中包含了测试集的各种数据,例如:测试用例集名称、各个测试用例名称、各个关键字名称等

4、再将测试数据对象传送给测试集合类处理,生成测试集suite对象

5、紧接着运行suite中的用例测试,然后调用关键字,找到关键字对应的库文件,进行操作

6、将每一个操作和结果都写在输出的xml文件中(有专门调用对输出xml进行操作的类)

7、最后待测试完成后,调用转换类将xml文件转换成相应的HTML日志报告,测试完成。

从Robot Framework的工作原理上,我们可以很好的学习到关键字测试驱动思想和数据测试驱动思想的应用。

学习安排上

如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

视频文档获取方式:

这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片进群即可自行领取

Robotframework 的简介及其工作原理~相关推荐

  1. Robotframework 简介及工作原理(转载)

    Robot Framework是一个完全基于关键字测试驱动的框架,它即能够基于它的一定规则,导入你需要的测试库(例如:其集成了selenium的测试库,即可以理解为操作web控件的测试底层库),然后基 ...

  2. 华为防火墙简介及其工作原理

    防火墙作为一种安全设备被广泛使用于各种网络环境中,他在网络间起到了间隔作用.华为作为著名的网络设备厂商,2001年便发布了首款防火墙插卡,而后根据网络发展及技术需求,推出了一代又一代防护墙及安全系列产 ...

  3. Shiro(一)之shiro简介与工作原理

    一.shiro简介 这里我先来介绍一下什么是shiro,Apache Shiro 是 Java 的一个安全框架.目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring ...

  4. Spring的简介和工作原理

    一.简介     Spring 是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring 框架目标是简化Java企业级应 ...

  5. 旋转变压器简介、工作原理及分类

    文章整理于网络: 一.简介 旋转变压器(resolver)是一种电磁式传感器,又称同步分解器.它是一种测量角度用的小型交流电动机,用来测量旋转物体的转轴角位移和角速度,由定子和转子组成.其中定子绕组作 ...

  6. Netflix Hystrix断路器简介与工作原理

    一.前言? 1.Netflix Hystrix断路器是什么? Netflix Hystrix是SOA/微服务架构中提供服务隔离.熔断.降级机制的工具/框架.Netflix Hystrix是断路器的一种 ...

  7. 逆变器的简介、工作原理及主要构成

    逆变器,英文inverter,是一种电源转换装置,可将12V或24V的直流电转换成230V.50Hz交流电或其它类型的交流电.它输出的交流电可用于各类设备,最大限度地满足移动供电场所或无电地区用户对交 ...

  8. php总结1 ——php简介、工作原理、运行环境、文件构成、语法结构、注释

    1.1 PHP  超文本预处理程序.实际就是制作网站的脚本程序 1.2 运行环境: wamp--windowns+apache+mySQL+php    常用于开发.学习和研究 lamp --linu ...

  9. jsp简介及工作原理

    什么是jsp JSP全名为Java Server Pages,中文名叫java服务器页面,是一种动态页面技术,逻辑从servlet中分离出来.在传统的网页HTML(标准通用标记语言的子集)文件(*.h ...

最新文章

  1. 写给对 ”游戏开发” 感兴趣的朋友们
  2. 0xBenchmark中垃圾回收测试模块的分析及改进
  3. python super用法
  4. 计算机等级考试试题4,计算机等级考试二级模拟试题4
  5. LeetCode 560. 和为K的子数组(前缀和差分)
  6. petshop4.0 详解之二(数据访问层之数据库访问设计)
  7. 用python实现单例模式_Python单例模式的两种实现方式
  8. vue执行操作成功但页面不刷新_vue.js数据更新页面不刷新
  9. java写企业员工信息管理系统
  10. 推荐一款源代码统计分析、开发工作量估算、测试缺陷预测的开发工具 —— 代码统计分析工具(SourceCounter)
  11. 百度富文本编辑器使用
  12. 推荐广告相关名词ctr,cvr等
  13. linux-centos7解决视频无法看问题(安装Adobe flash player)
  14. Java获取当前时间到凌晨12点剩余秒数
  15. 硬盘分区格式GPT与MBR无损互相转换而不破坏硬盘存储资料
  16. 前端开发规范——Vue
  17. GitHub 标星 1000+ 的开源电子书
  18. Generalizing to Unseen Domains: A Survey on Domain Generalization 论文分享
  19. GMAT750分冲刺-Quantitative
  20. 云函数实现网站自动化签到配置详解【Web函数/Nodejs/cookie】

热门文章

  1. Part I 空气曲棍球 Chapter7(7.2 Loading Textures into OpenGL)
  2. 数据库结构化查询语言的使用(一)
  3. 「转发」乡村振兴项目最全实施流程,堪称教科书
  4. Android TextView字体设置
  5. 内存管理 浅析 内存管理/内存优化技巧
  6. Chapter 3 Classification (Titanic数据集)
  7. 文明重启为什么会服务器修复,文明重启为什么会触发建筑上限保护 上限保护解决方法...
  8. Latex如何首行不空格/不缩进
  9. 重要 紧急 时间管理
  10. 基于Web的电竞赛事管理系统的设计与实现(论文+源码)_kaic