From:http://www.cnblogs.com/buaawp/p/4754399.html Robot Framework 教程 (3) - Resource及关键字 的使用 在进行软件自动化测试时,我们设计并编写好一个测试脚本的业务逻辑之后,需要将其中的业务数据提取为变量,并对业务逻辑进行封装.在后续的测试过程中,只需设置每次测试的测试数据,而不必更改业务逻辑. 举个例子,我们对baidu搜索进行兼容性测试时,我们的业务逻辑是 [打开浏览器] - [输入搜索内容] - [点击搜索按钮]…
1.  Robot Framework 教程: http://cgmblog.sinaapp.com/html/category/robot-framework 2.  Robot Framework 中文论坛:http://www.robotframework.net/ 3.  齐涛的论坛:http://blog.csdn.net/tulituqi/article/category/897484 4.  学步园:http://www.xuebuyuan.com/search?cx=007504…
上一篇文章中,简单模拟了一个baidu搜索并截图的过程,在搜索过程中,我们需要对搜索框.搜索按钮进行定位.本篇文章主要介绍一下具体的定位方法. 我们的脚本如下: *** Settings *** Library Selenium2Library *** Test Cases *** firefox兼容性 Open Browser https://www.baidu.com/ ff Input Text id=kw LeetTest Click button id=su Sleep 2 Captu…
在自动化测试过程中,使用For循环来对某个动作进行重复操作是很普遍的行为.在Robot Framework中,各种测试库中均提供了多种方式的For循环结构,在其中覆盖了大部分类型的循环类型.而Robot Framework自身也包含了多种的For循环语法结构,可用于独立编写带循环结构的测试脚本. For循环可以在TestCase中进行使用,也可以在KeyWrod中进行使用.除了特别简单的测试用例外,一般建议在Keyword中进行使用,以便于将For循环的复杂性隐藏起来,保持测试用例结构上尽可能的…
本篇文章,主要对如何在Robot Framework中使用条件表达式做过程控制作说明. 按照Robot Framework的官方文档介绍,Robot Framework并不建议在TestCase或Keyword的编写中使用条件表达式,应为这样做会使TestCase变得难以理解.它提倡的是将逻辑过程写在自定义的Test Library中,之后再执行Test Library中的方法,并获取其执行结果.尽管如此,RobotFramework还是提供了一些Keyword可以用于条件判断. 1. Run…
Robot Framework 提供了多种Library.其中Database Library可用来连接操作数据库. 1.安装Database Library 打开Robot Framework官网,找到Database Library,官网提供了Java 和Python两个版本的Database Library,这里我使用的是Python版,地址为 http://franz-see.github.io/Robotframework-Database-Library/ 其中的软件Requirem…
0.Robot Framework 简介 Robot Framework 是一个通用的自动化测试框架,主要用于“验收测试”和“验收测试驱动开发(ATDD)” (会其它文章中会详细介绍ATDD).它使用的是表格式的测试数据语法,并且实现了关键字驱动测试策略.其测试能力可以使用测试库进行扩展,测试库可以使 用Python或Java方法进行编写,并且用户可以从现有的关键字中扩展出新的关键字. 1.环境配置 Robot Framework 是python开发的开源测试框架,在使用时,需要安装python…
robot framework中除了内置的关键字,以及低级别的用户自定义关键字外,为了使用例更加整洁,我们还可以形成更高级别的关键字 方法如下: 在Keywords里面设置 其中Run Success和Run Fail When Devide Is 0 就是设置的更高级别的关键字由一些低级别的关键字组成,如自定义关键字Divide Calculate 和内置关键字Should Be Equal As Integers和Run Keyword And Expect Error…
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 什么是用户关键字 类似 Python 里面的函数,我们自定义函数,等于我们自定义关键字,也称为用户关键字 *** Keywords *** 表放的就是用户关键字 定义用户关键字的简单栗子 等价于 Python 里面:定义函数,调用函数 def add(a, b): return a + b if __name__…
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 前言 什么是扩展关键字?就是你自己写的 Python 文件,里面包含了函数或者类 然后 RF 导入这个 Python 模块,就可以调用函数或者类方法,它们就是扩展关键字 Python 模块作为测试库 模块文件名作为测试库的名字 比如:Python 模块名叫 MyLibrary,文件名是 MyLibrary.py,那…
        开发系统关键字:http://www.cnblogs.com/fnng/p/4261293.html http://www.cnblogs.com/fnng/p/3969978.html     一.环境搭建 网上有很多的教程,这里就不多讲了   二.RIDE的界面认识   这里只介绍几个重要常用的功能,其他相信自己都能理解   1.Search Keywords(F5): 搜索关键字 2.Content Assistance:内容助手 3.View RIDE Log:查看RID…
RobotFrame Work为我们提供了包括OS.Android.XML.FTP.HTTP.DataBase.Appium.AutoIt.Selenium.Watir等大量的库.在使用过程中,除这些库之外,对于某些我们自己特定的应用逻辑,我们还需要开发自己的Library,以便于进行自动化测试. 本篇我们以baidu搜索英文时的自动翻译为例,介绍一下如何开发自己的Library. 0.目标 我们这次使用的示例的业务逻辑如下,打开baidu,搜索英文单词“Test”,查看页面中是否含有Test的…
在第一讲的时候,已经安装了Selenium2Library这个库,这一篇主要来整理介绍一下Selenium2Library中的常用关键字,为我们之后的web自动化打好基础 一.browserManagement 浏览器: 1.Open Browser      打开浏览器 2.Close Browser     关闭浏览器 3.Go to         转到某个URL 4.Go Back    相当于浏览器的后退 5.Switch Browser   转换浏览器 (参数是打开浏览器的index…
http://www.testclass.net/2017/09/28/happy-holidays/…
Robot Framework 作为一款通用测试框架,可加载多种测试库.驱动多种测试工具,并可对各种自定义脚本进行集成.对于Robot Framework,我准备将其分为 入门--Robot Framework的安装使用及基本内容,初步实现简单测试实例: 实战--以几种常见的被测件作为案例,进行实际的侧实演示: 详解--对Robot Framework的官方文档及内置库进行详细介绍: 测试库--对常用的测试库进行介绍,并进行简单实例演示: 源码分析--对Robot Framework源码进行分析…
常用关键字介绍 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习 Robot Framework.虽然通过 RIDE 提供“填表”一样的写测试用例的方式.但它却有着像编程语言一样的强大的关键字,以及可以开发关键字的扩展能力. 1 log 就是“print” log 关键字就是编程语言里的“print”一样,可以打印任何你想打印的内容.在 test case 中填写以下内容: 勾选测试用例,点击工具栏的“Run Tests”按钮或按快捷键“F…
4.1创建测试库 Robot Framework的实际测试功能由测试库提供.有许多现有的库,其中一些甚至与核心框架捆绑在一起,但仍然经常需要创建新的库.这个任务并不复杂,因为正如本章所示,Robot Framework的库API简单明了. 4.1.1简介 支持的编程语言 不同的测试库API 4.1.2创建测试库类或模块 测试库名称 为测试库提供参数 测试库范围 指定库版本 4.1.3创建静态关键字 哪些方法被视为关键字 关键字名称 关键字参数 关键字的默认值 可变数量的参数 参数类型 4.1.4…
条件表达式: Run Keyword If 表达式 执行动作   ... ELSE IF 表达式 执行动作 ... ELSE 执行动作   基础格式见上表,下面是我遇到的坑: 表达式:判断字符串变量是否等于"ABC" ,不是直接写    ${str} == 'ABC' ,而是 '${str}' == 'ABC',要用引号将变量包含 执行动作: 1.数值运算用Evaluate关键字 ${add} Evaluate ${num}+3 2.int型传参 num=${1} 关键字接收num参数…
1.1  Builti标准类库 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习Robot Framework.虽然通过RIDE 提供“填表”一样的写测试用例的方式.但它却有着像编程语言一样的强大的关键字,以及可以开发关键字的扩展能力. Builti标准类库包含了很多最常用的关键字,下面就逐一介绍常用关键字的使用. 3.7.1 log 关键字 log 关键字就是编程语言里的“print”一样,可以打印任何你想打印的内容. 在log关键字测试…
08- 创建测试库--发布测试库 ***** 测试库文档 为了便于维护,测试库文档应该从源代码中生成. Robot  Framework 有自己的文档工具 libdoc.py生成 API 文档. 一个关键字文档的第一行通常应该包括该关键字的简要概述. 这行内容会被 libdoc.py 当作关键字的 tool tip,也会被显示到测试日志中.   Robot  Framework User Guide : Library documentation tool (libdoc) 举例: python…
一.说明 Python3----网上很多文章都是用Python2,Robot Framework的部分文档没更新也直接写着不支持Python3(如RIDE does not yet support Python 3),但事实上Robot Framework下的所有项目的最新版本都是支持Python3.6+了的,反倒是Python2以后不久可能就不支持了(如RIDE 1.7.4 THIS IS THE LAST RELEASE SUPPORTING PYTHON 2.7). Robot Frame…
当我第一次使用Robot Framework时,我是拒绝的.我跟老大说,我拒绝其实对于习惯了代码的自由,所以讨厌这种“填表格”式的脚本.老大说,Robot Framework使用简单,类库丰富,还可以自由开发系统关键字.那我说,你不能让我用我就用,我要先用用看.自从我用了半年多以来,duang~! 真的挺好用的.duang~! ,我相信我用完是这个样子,你们用完也是这个样子.duang~! duang~! ----今年流行“duang”,我也来一段.哈哈~! Robot Framework特点:…
3.6  用户关键字 在Robot Framework 中关键字的创建分两种:系统关键字和用户关键字. 系统关键字是需要通过脚本开发相应的类和方法,从而实现某一逻辑功能. 用户关键字是根据业务的需求利用现有的系统关键字,把多个重复的步骤集合在一起组成用户关键字. 例子:教育局招生系统的登录,我们新建一个mykeywork.txt 文件,然后把每一步创建一个用户关键字,方便后面的流程关键字封装,如下图:…
在 Robot Framework 中关键字的创建分两种:系统关键字和用户关键字.系统关键字需要通过脚本开发相应的类和方法,这个我们将在后面的章节介绍.用户关键字的创建就要简单得多,它主要利用现有的系统关键字,根据不同的业务,把多个重复的步骤集合在一起组成用户关键字. 比如,我们有一个循环: 我们经常会用到这个循环,只是每次循环的次数不是一样.有时候需要循环 5 次,有时候需要循环 8次.对这样的需求,我们就可以将这个循环封装成一个关键字 右键点击“测试项目”或“测试套件”都可以看到“New U…
本篇教程,我们继续接着上篇内容进行讲解,我们本节教程讲解的是Robot Framework 机器人框架中的变量中使用判断.字符串的拼接.Evaluate的用法.调用Python文件.条件分支语句.以及For循环语句案例和字典中的基本使用,介绍字典的目的是方便后面我们做接口测试!好吧,我们开始搞起吧~~~ 字符串的拼接 Evalute用法 调用Python文件 条件分支案例 For循环语句案例 一.字符串的拼接 在robot framework中,一切对象皆为字符串类型,所以字符串的拼接操作就显得…
今天给大家分享的是Robot Framework 机器人框架中 BuiltIn 基础库的使用...BuiltIn 库里面提供了很多基础方法助力于我们在自动化测试领域中做的更好!——本系列教程是教会大家如何使用它的基本用法,并在以后的工作中熟练使用!好了,废话不多说,继续老套路,开始干就完了! 我们主要介绍的知识点是: 变量 获取时间 字符串长度 变量赋值判断 列表创建 命令行赋值 一.变量 robot framework中  定义变量的有很多方法:一个是scalar,一个是 list 下面我们来…
最近一直在用robot framework 做自动化测试项目,老实说对于习惯直接使用python的情况下,被框在这个工具里各种不爽,当然,使用工具的好处也很多,降低了使用成本与难度:当然,在享受工具带来便利的同时也会受制于工具.对于特定的需求,工具没提供相关的Library和关键字的时候,就只能放弃了. 还好robot framework提供了 Evaluate 关键字,对于Evaluate 关键字的使用等有时间再讲.当robot framework 不能解决需求,我是直接写个.py 程序,通过…
之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和python联系上了,跟封装包提供调用函数类似. 1.封装一个库并调试通过.放在C:\Python27\Lib\site-packages目录下 2.ride中导入Library 3.查看导入的库 4.测试库是否正常工作   1.创建一个目录HelloWorld(这是库的名字,自己随便定义) 2.在目录中…
本文的目的,是记录如何在rf下,开发属于自己的库函数(又称之系统关键字) 1.首先在..\Python27\Lib\site-packages目录下创建自定义库目录如Verification_Library,用于放自定义的library库. 2.在自定义文件夹Verification_Library中新建一个"version.py"文件,用于描述自定义测试库的版本信息.代码如下: VERSION='1.0' 3.在自定义库的文件夹Verification_Library下,新建一个ke…
下面关键字全部由 Builtin 库提供,Builtin 为 Robot Framework 标准类库.Builtin库提供常用的关键字 1.log log 关键字就是编程语言里的"print"一样,可以打印任何你想打印的内容. 2.定义变量 通过"Set variable"关键字来定义变量 3.连接对象 "Catenate"关键字可以连接多个信息 加上"SEPARATOR="可以对多个连接的信息进行分割. 4.定义列表 通过…