RobotFramework——介绍篇
1、简介
Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。
Robot Framework是开源软件,由Nokia Siemens Networks开发并提供支持。
2、特性
1.测试用例使用文本文件(TXT或者TSV文件)保存,使用制表符分隔数据。可以方便的使用任何文本编辑器,或者EXCEL编辑测试用例。也可以使用HTML格式创建用例。
2.测试用例中支持变量使用,可以使用IF语句和FOR循环语句。
3.可以利用“标签”功能对测试用例进行分类和有选择执行。
4.支持关键字驱动、数据驱动和行为驱动。
5.利用已有的关键字,测试人员可以创建自己需要的关键字,形成更高级别的行为。
6.测试执行报告和日志是HTML格式,容易阅读。
7.Robot Framework并不是一款像QTP一样的自动化测试工具。它是一个自动化测试框架,或者说是一个自动化测试平台。
8.提供了测试执行事件的监听接口,并且可以自定义接口中的脚本。例如,某个用例执行前,“start_test”接口中的脚本就会被执行;用例执行结束后,“end_test”接口中的脚本就会被执行。而测试人员可以自定义“start_test”、“end_test”这两个接口的脚本。
9.提供了命令行接口和XML格式的输出。可以与版本管理工具结合,进行持续集成。
10.Robot Framework是通过测试库识别被对象、操纵被测对象,有很多自带的或者第三方的开源测试库。例如,使用“selenium2Library”库测试web客户端。此外还可以测试java客户端、Win32客户端、SSH协议的字符终端等。
11.测试人员可以使用Python和java创建自己需要的测试库。
12.提供了远程测试执行接口,可以进行分布式测试执行。
3、RIDE
RIDE是一款专门用来编辑Robot Framework用例的软件,用Python编写并且开源。RIDE可以从Robot Framework官网找到最新的下载链接。
== RobotFramework的一些特性==
•易于使用,采用表格式语法,统一测试用例格式;
•重用性好,可以利用现有关键字来组合新关键字;
•支持变量;
•支持创建基于数据驱动的测试用例。
•结果报告和日志采用HTML格式,易于阅读;
•提供标签以分类和选择将被执行的测试用例;
•平台、应用无关;
•功能全面,支持WEB测试(Selenium)、Java GUI 测试,启动线程、终端、SSH等;
•易于扩展,提供了简单API,用户可以自定义的基于Python或者Java的测试库;
•易于集成,提供了命令行接口和基于XML的输出文件;
•易于与版本管理集成;
==RobotFramework的架构方案==

==RobotFramework的中文支持==
由于初始并不支持中文,于是在生成测试报告的时候对于中文的关键字无法识别,使用下面的方法可以正常显示中文。
•在[PythonDir]Libsite-packagesrobotutils下的encoding.py文件中,找到def _get_output_encoding(): 原来的编码是’cp437’ 将其改成’ cp936’(简体中文,gbk) 。

==目前robotFramework支持的测试库==
下面这些是可以在robotFramework上支持的测试库,但是要独立安装程序。在安装之后,使用的时候要单独加载测试库。
SeleniumLibrary - A web testing library that uses popularSelenium tool internally.
watir-robot - A web testing library that uses popularWatir tool via theremote library interface.
WatinLibrary - A web testing library that usesWatin tool (a .NET port of Watir) via theremote library interface.
SwingLibrary - A Swing GUI testing library.
EclipseLibrary - A library for testing Eclipse RCP applications using SWT widgets.
AutoItLibrary - Windows GUI testing library that usesAutoIt freeware tool as a driver.
DatabaseLibrary (Java) - A test library that provides common functionality for testing database contents. Implemented using Java so works only with Jython.
DatabaseLibrary (Python) - Another library for database testing. Implemented with Python and works also on Jython.
SSHLibrary - A test library that enables SSH and SFTP.
How-To: Sikuli and Robot Framework Integration - This is not really a library but these instructions explain how to integrateSikuli tool with Robot Framework
==有关RobotFramework的知识库网站==
http://code.google.com/p/robotframework/
http://code.google.com/p/robotframework/wiki/UserGuide
http://code.google.com/p/robotframework-seleniumlibrary/
http://robotframework-seleniumlibrary.googlecode.com/hg/doc/SeleniumLibrary.html?r=2.8
http://code.google.com/p/robotframework/wiki/BuiltInLibrary
RobotFramework——介绍篇的更多相关文章
- 最牛逼android上的图表库MpChart(一) 介绍篇
最牛逼android上的图表库MpChart一 介绍篇 MpChart优点 MpChart是什么 MpChart支持哪些图表 MpChart效果如何 最牛逼android上的图表库MpChart(一) ...
- ASP.NET Core Web开发学习笔记-1介绍篇
ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...
- DDD分层架构之值对象(介绍篇)
DDD分层架构之值对象(介绍篇) 前面介绍了DDD分层架构的实体,并完成了实体层超类型的开发,同时提供了验证方面的支持.本篇将介绍另一个重要的构造块——值对象,它是聚合中的主要成分. 如果说你已经在使 ...
- Kubernetes系列之Helm介绍篇
本次系列使用的所需部署包版本都使用的目前最新的或最新稳定版,安装包地址请到公众号内回复[K8s实战]获取 介绍 Helm 是 Deis 开发的一个用于 Kubernetes 应用的包管理工具,主要用来 ...
- Percona XtraBackup 安装介绍篇
XtraBackup介绍 XtraBackup是Percona公司的开源项目,用以实现类似Innodb官方的热备份工具InnoDB Hot Backup的功能,它支持在线热备份(备份时不影响数据读写) ...
- (zhuan) 深度学习全网最全学习资料汇总之模型介绍篇
This blog from : http://weibo.com/ttarticle/p/show?id=2309351000224077630868614681&u=5070353058& ...
- 180719-Quick-Task 动态脚本支持框架之使用介绍篇
文章链接:https://liuyueyi.github.io/hexblog/2018/07/19/180719-Quick-Task-动态脚本支持框架之使用介绍篇/ Quick-Task 动态脚本 ...
- SpringBoot 系列教程之编程式事务使用姿势介绍篇
SpringBoot 系列教程之编程式事务使用姿势介绍篇 前面介绍的几篇事务的博文,主要是利用@Transactional注解的声明式使用姿势,其好处在于使用简单,侵入性低,可辨识性高(一看就知道使用 ...
- 使用ADMT和PES实现window AD账户跨域迁移-介绍篇
使用 ADMT 和 pwdmig 实现 window AD 账户跨域迁移系列: 介绍篇 ADMT 安装 PES 的安装 ADMT:迁移组 ADMT:迁移用户 ADMT:计算机迁移 ADMT:报告生成 ...
随机推荐
- iOS开发:读取pdf文件
方法一:使用QLPreviewController #pragma mark 浏览存在沙盒的文件 -(void)quickLook { QLPreviewController *QLPreviewV ...
- 如何用css画出三角形
看到有面试题里会有问到如何用css画出三角形 众所周知好多图形都可以拆分成三角形,所以说会了画三角形就可以画出很多有意思的形状 画出三角形的原理是调整border(边框)的四个方向的宽度,线条样式以及 ...
- 自定义cell的一些知识
1.要往cell里面添加一个自定义的子控件,都是添加到cell的contentView,不是添加到cell里面. 2.通过xib自定义cell * 添加tableView * 加载团购数据 * 新建x ...
- 利用Quartz2D推图的另一个方法 (使用CGMutalePathRef进行分层次)
可以利用 CGMutablePathRef 创建每个不同图形,然后再一起添加到CGContext中 - (void)drawRect:(CGRect)rect { CGContextRef ctx = ...
- springMVC的@ResponseBody、@RequestBody使用需要注意的地方
springMVC我觉得比struts2好的其中一个原因就是可以使用注解解析json数据,方便快捷.但是,即使如此,还是有需要注意的地方. 1.返回的地方设置@ResponseBody,请求的对象参数 ...
- JVM学习笔记:字节码执行引擎
JVM学习笔记:字节码执行引擎 移步大神贴:http://rednaxelafx.iteye.com/blog/492667
- 【BZOJ-4326】运输计划 树链剖分 + 树上差分 + 二分
4326: NOIP2015 运输计划 Time Limit: 30 Sec Memory Limit: 128 MBSubmit: 703 Solved: 461[Submit][Status] ...
- 【Codeforces-707D】Persistent Bookcase DFS + 线段树
D. Persistent Bookcase Recently in school Alina has learned what are the persistent data structures: ...
- Android——PULL解析XML
简介 Android中常常使用XML文件保存用户的APP设置信息.因此需要对XML文件的相关操作进行了解.本文将以<学生信息管理系统>为案例背景进行介绍相关的XML解析的介绍,以及其他相关 ...
- 找女神要QQ号码
引言 我们组来了个美女程序员,我心里窃喜,哈哈这下机会来了.我在想怎么下手呢?好吧,还是从QQ号码开始,找到女神要到QQ号,哈哈,我真是个天才~~~ 是这样子滴 想法是美好的,现实是残酷的,找女神要Q ...