Robot FrameWork基础学习(三)
一、关键字(Keyword)根据架构的区分可分为以下三层结构:
底层关键字、公共层关键字、特性关键字。
底层关键字一般与最底层的代码在关系,为上层公共关键字和特性关键字提供接口。
公共层关键字:一般是与程序具体功能关联的;
特性层关键字:一般是与具体业务关联的,也可以称做业务关键字。一般调用底层和公共层关键字。
二、 Ride 内置常用关键字
Log: 打印日志信息
Repeat Keyword: 重复执行某个关键字多少次
Run Keyword: 执行关键字
Run Keyword if: 满足条件时执行某个关键字
Run Keyword if Any Tests Failed: 测试套任务用例失败时,执行该关键字
Run Keyword if Test Failed: 测试用例失败时执行操作
Run Keyword if *: 一系例条件执行某种操作
Set Variable: 设置变量
Should Be True/Should Not Be True: 验证
Sleep: 等待时间
For: 执行循环
exit for loop/if: 推出循环。
三、手工用例转自动化
1.根据手动用例提取关键字
2.关键字优化,合并公共的关键字,定义参数和初始化条件等
3.组装关键字成用例
- 手工测试思路:
前置条件----->测试步骤------>结果验证
- 自动化测试思路:
初始化------>前置条件------->测试步骤-----(Y or N)----->结果验证--------->Finally
四、用例编写技巧总结
1.充分利用用例的setup和teardown
- 测试套的suite setup和suite teardown,在执行这个测试套开始和结束时的通用方法,一般可以为测试套用例的环境初始及清理操作。
- 测试套的test setup和test teardown,该测试套中的每个用例的开始和结束操作,通常为用例级别的环境初始、清理或者恢复操作。
- 测试用例的test setup和test teardown,为该用例的在执行的开始和结束操作,通常为用例级别的环境初始、清理或者恢复操作。
如下图所示:

2.测试用例过程中失败尽量使环境恢复,以免影响后面的用例扫行。
3.用例有可能会失败的地方,需要考虑环境恢复操作
4.如果一个测试套的初始操作基本上一致,把该操作放在测试套或者第一个用例,不必每个用例都调用该方法
Robot FrameWork基础学习(三)的更多相关文章
- Robot Framework基础学习(一)
Robot Framework语法学习: 一.变量的声明.赋值与使用 1.变量标识符:每个变量都可以用 变量标识符 ${变量名} 来表示. 2.变量声明:可以在TestSuite上点右键或者在Edi ...
- Robot FrameWork基础学习(二)
在Robot Framework中,测试套件(Test Suite)主要是存放测试案例,而资源文件(Resource)就是用来存放用户关键字. 内部资源:Resource 外部资源: External ...
- Robot Framework基础学习(六)
网页弹窗 参考:http://blog.csdn.net/Allan_shore_ma/article/details/65629246 常见的网页弹窗,有如下几类: alert ajax ifram ...
- Robot Framework基础学习(五)
Selenium2Library 常用关键字介绍 关于Selenium2Library 的关键字,我们可以参考:http://rtomac.github.io/robotframework-selen ...
- Robot FrameWork基础学习(四) 元素定位
元素定位 对于web自动化测试来说,就是操作页面的各种元素,在操作元素之间需要先找到元素,换句话说就是定位元素. Selenium2Library提供了非常丰富的定位器: 虽然提供了这么多种定位方式, ...
- Robot Framework语法学习(一)
Robot Framework语法学习: 一.变量的声明.赋值与使用 1.变量标识符:每个变量都可以用 变量标识符 ${变量名} 来表示. 2.变量声明:可以在TestSuite上点右键或者在Edi ...
- Spring Framework基础学习
Spring Framework基础学习 Core support for dependency injection,transaction management,web applications,d ...
- Python入门基础学习 三
Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...
- Python基础学习三
Python基础学习三 1.列表与元组 len()函数:可以获取列表的元素个数. append()函数:用于在列表的最后添加元素. sort()函数:用于排序元素 insert()函数:用于在指定位置 ...
随机推荐
- idea自动注入和自动编译
---恢复内容开始--- 自动编译也就是时时编译,当我们写错代码的时候,idea能够马上报错,这个是不错的功能. 安装操作看下图: 下面这个功能的作用就是,如果你不修改的话,你的项目可以正常运行,但是 ...
- FastDFS的配置、部署与API使用解读(8)FastDFS多种文件上传接口详解(转)
1.StorageClient与StorageClient1的区别 相信使用happy_fish的FastDFS的童鞋们,一定都熟悉StorageClient了,或者你熟悉的是StorageClien ...
- HDU 3564 Another LIS splay(水
题意: 给定一个空序列 插入n个数(依次插入 1.2.3.4··n) 以下n个数表示i插在哪个位置. 每插入一个数后输出这个序列的lis 然后... 由于每次插入的数都是当前序列最大的数 所以不会影响 ...
- 【网络协议】TCP的流量控制机制
一般来说,我们总是希望传输数据的更快一些,但假设发送方把数据发送的非常快.而接收方来不及接收,这就可能造成数据的丢失.流量控制就是让发送方的发送速率不要太快.让接收方来得及接收. 对于成块数据流,TC ...
- java中使用opencv
Java + opencv学习:在Eclipse下配置基于Java的OpenCV开发环境 2016-04-08 17:43 6491人阅读 评论(0) 收藏 举报 分类: OpenCV学习(10) ...
- 话说Session
Session这个概念,对于搞软件的来说,再熟悉不过了.就拿我来说,Hibernate, Shiro, Spring, JSP, Web Server等等,全都涉及到Session. 不怕笑话,一直都 ...
- C# GetHashCode 的实现方式
在项目中,在使用哈希表时.有时会须要Override GetHashCode. 这里给出一种普遍的做法: 版本号1:实现一个helper.传递类型T.返回这个类型的hashcode.函数逻辑非常直接, ...
- iOS9新特性之泛型
iOS9新特性之泛型 作用:限制类型 好处:1.提高开发规范,减少程序员之间的交流 2.通过集合取出来的对象,直接当作泛型对象使用,可以直接使用点语法(id类型不能使用点语法) 使用场景: 1.在集 ...
- windowbuilder安装
windowbuilder,也就是原来的SWT Designer.Google收购了Instantiations,把它的工具也重新免费发布了.用过swt designer的人都知它是非常好用的swin ...
- 解决Error:Unable to find method 'org.gradle.api.internal.project.ProjectInternal.
错误描述今天在Github上面下载了一份代码,然后导入到Android Studio中直接报错误 错误描述如下: Error: Unable to find method ‘org.gradle.ap ...