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:报告生成 ...
随机推荐
- ASP.Net Web Form<一> aspx文件编译及呈现
对比复习下JSP 1.jsp的本质是Servlet ,会在第一次被访问时会被翻译成一个类文件,从此对这个页面的访问都是由这个类文件执行后进行输出. aspx 本质是IHttpHandler 2.jsp ...
- svg是什么
SVG,指可缩放矢量图形(Scalable Vector Graphics),是用于描述二维矢量图形的一种图形格式,是由万维网联盟制定的开放标准.SVG 使用 XML 格式来定义图形,除了 IE8 之 ...
- Msyql-检测数据库版本
show variables like '%version%'; 数据库版本结果: "protocol_version","" "version&qu ...
- Linux下执行.sh文件
Linux下执行.sh文件有两种情况: 一.直接./加上文件名.sh,如运行hello.sh为./hello.sh[hello.sh必须有x权限] 二.直接sh 加上文件名.sh,如运行hello.s ...
- python3 异常处理
什么是异常 Python用异常对象(exception object)来表示异常情况.遇到错误会引发异常,如果异常对象未被处理或者捕捉,程序就会用回溯(traceback)终止执行. Raise语句: ...
- Android高工必备技能
转载:http://www.jianshu.com/p/d791bbede02c Step 1. 玩转RxJava 使用RxJava处理异步极其方便,各种操作符可以对数据做流水线式操作,再加上与Ret ...
- 【BZOJ-4353】Play with tree 树链剖分
4353: Play with tree Time Limit: 20 Sec Memory Limit: 256 MBSubmit: 31 Solved: 19[Submit][Status][ ...
- 【BZOJ-3196】二逼平衡树 线段树 + Splay (线段树套平衡树)
3196: Tyvj 1730 二逼平衡树 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2271 Solved: 935[Submit][Stat ...
- springMVC-JSR303数据效验
JSR 303 是java为Bean数据合法性校验提供的标准框架, 它已经包含在javaEE6.0中 JSR 303 通过Bean属性上标注类似于@NotNull.@Max等标准的注解指定校验规则, ...
- dedecms /member/myfriend_group.php SQL Injection Vul
catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 Dedecms会员中心注入漏洞 Relevant Link http:/ ...