Robot Framework测试框架学习笔记

- Windows:可直接下载安装程序安装,安装完成后在系统环境变量中的Path变量中新增C:\Python27\Scripts,C:\Python27为本机Python安装路径;
- Linux:下载robotframework-2.6.3.tar.gz并解压,然后进入解压目录并执行安装命令:python setup.py install
- 验证安装是否成功,执行命令:pybot --version
- 标量:语法${scalar}。当在测试数据中使用标量变量时,他们将被分配的值所代替。
- 列表变量:语法@{LIST}。列表变量是复合变量,可以分配多个值给它。
- 内建变量:
- 操作系统相关的变量
- 数字变量:变量语法可以用来创建一个全是整型和浮点型的数字:整形${80}、浮点型 ${3.14}
- Boolean变量:${true/false}
- Null/None变量: ${null/None}
- 空格${SPACE}和空${EMPTY}变量
- 在测试用例文件(test case file)中建立测试用例;
- 一个测试文件自动的建成一个包含了这些测试用例的测试集(test suite);
- 一个包含多个测试用例文件(test case file)的目录构成更高级别的测试集;
- 一个测试集目录可以包含其他测试集目录
此外,还有:
- 测试库(Test libraries)包含最低级别的关键字
- 资源文件(Resource files)包含变量和更高层次的用户自定义关键字
- 变量文件(Variable files)可以提供比资源文件更灵活的方式创建变量


Table name | Used for | Aliases |
Setting table | 1.导入测试库,资源文件和变量文件 2. 为测试集和测试用例定义元数据 |
Setting Settings Metadata |
Variable table |
定义可以用在其他地方的测试数据的变量 | Variable Variables |
Test case table | 通过可用的关键字创建测试用例。 | Test case Test cases |
Keyword table
|
通过低级别关键字创建用户自定义关键字 |
Keyword
Keywords
User Keyword
User Keywords
|
Setting | Value | Comment |
Library | OperatingSystem | |
Library | testlibs/LoginLibrary.py | #导入用户自定义库 |
Test Setup | Clear Login Database | #每个测试用例执行时会先执行setup |
Test Teardown | #每个测试用例执行完后会执行teardown |
Test Case | Action | Argument | Argument | Argument |
User can create an account and log in | Create Valid User | fred | P4ssw0rd | #关键字驱动,即:调用keyword表中的同名关键字 |
Login | fred | P4ssw0rd | ||
Creating user with invalid password should fail | [Template] | Creating user with invalid password | #加上[Template]后则关键字驱动变为数据驱动 | |
abCD5 | ${PWD INVALID LENGTH} | |||
abCD567890123 | ${PWD INVALID LENGTH} |
Keyword | Action | Argument | Argument | Argument |
Clear Login Database | Remove file | ${DATABASE FILE} | ||
Create Valid User | [Arguments] | ${username} | ${password} | #定义关键字可以理解为定义函数实现 |
Create user | ${username} | ${password} | #Create User为LoginLibrary.py中定义的关键字,robot Framework会忽略下划线 | |
Status should be | SUCCESS | #同上 | ||
Login | [Arguments] | ${username} | ${password} | |
Attempt to login with credentials | ${username} | ${password} | #同上 | |
Status Should Be | Logged In | |||
Creating user with invalid password | [Arguments] | ${password} | ${error} | |
Create user | username | ${password} | ||
Status should be | Creating user failed: ${error} | |||
Variable | Value |
${DATABASE FILE} | ${TEMPDIR}${/}robotframework-quickstart-db.txt |
${PWD INVALID LENGTH} | Password must be 7-12 characters long |
Test Case | Action | Argument | Argument |
One return value | ${return} = | Return one value | |
Should Be Equal | ${return} | one | |
Two return values | @{list}= | Return two values | |
${first} | ${second} = | Return two values | |
Keyword | Action | Argument | Argument |
Return one value | [Return] | one | |
Return two values | [Return] | one | two |
- SeleniumLibrary :web方面测试的扩展库
- SwingLibrary:
Setting | Value |
Resource | Variable.html |
Resource | keyword.html |
转:http://www.360doc.com/content/11/1230/10/54470_176015885.shtml
Robot Framework测试框架学习笔记的更多相关文章
- Robot Framework测试框架用例脚本设计方法
Robot Framework介绍 Robot Framework是一个通用的关键字驱动自动化测试框架.测试用例以HTML,纯文本或TSV(制表符分隔的一系列值)文件存储.通过测试库中实现的关键字驱动 ...
- 用 Python 写 Robot Framework 测试
Robot Framework 框架是基于 Python 语言开发的,所以,它本质上是 Python 的一个库. 1.你懂 Python 语言. 2.又想使用 Robot Framework 测试框架 ...
- phalcon(费尔康)框架学习笔记
phalcon(费尔康)框架学习笔记 http://www.qixing318.com/article/phalcon-framework-to-study-notes.html 目录结构 pha ...
- 三年磨一剑,robot framework 自动化测试框架核心指南,真正讲透robot framework自动化测试框架(笔者新书上架)。
序 关于自动化测试的工具和框架其实有很多.自动化测试在测试IT行业中扮演着越来越重要的角色,不管是在传统的IT行业还是高速发展的互联网行业或是如今的大数据和大热的人工智能领域,都离不开测试,也更加离不 ...
- JavaSE中线程与并行API框架学习笔记1——线程是什么?
前言:虽然工作了三年,但是几乎没有使用到多线程之类的内容.这其实是工作与学习的矛盾.我们在公司上班,很多时候都只是在处理业务代码,很少接触底层技术. 可是你不可能一辈子都写业务代码,而且跳槽之后新单位 ...
- JavaSE中线程与并行API框架学习笔记——线程为什么会不安全?
前言:休整一个多月之后,终于开始投简历了.这段时间休息了一阵子,又病了几天,真正用来复习准备的时间其实并不多.说实话,心里不是非常有底气. 这可能是学生时代遗留的思维惯性--总想着做好万全准备才去做事 ...
- TensorFlow机器学习框架-学习笔记-001
# TensorFlow机器学习框架-学习笔记-001 ### 测试TensorFlow环境是否安装完成-----------------------------```import tensorflo ...
- Robot FrameWork测试案例
Robot FrameWork是一个自动测试框架,可到官网查看详细介绍. 安装 Robot Framework 本文中的Robot framework安装在Win7 (32 bit) 平台上. 接下来 ...
- Robot Framework自动化框架搭建的步骤
我把自己之前搭建Robot Framework自动化测试框架的步骤整理了一下,感兴趣的同学可以参考一下. Robot Framework自动化测试框架+ 可视化编辑工具RIDE+Selenium2 ...
随机推荐
- vuejs过滤器
结合管道符 | {{messageOne | capitalize}} capitalize 首字母大写 {{messageOne | uppercase}} uppercase 大写字母 {{mes ...
- 会报编译器警告的Xcode 6.3新特性:Nullability Annotations
最近在用Xcode 6.3写代码,一些涉及到对象的代码会报如下编译器警告: 1 Pointer is missing a nullability type specifier (__nonnull o ...
- <global-results>怎么用
<global-results>中的result可以被所有action跳转,所有action都可以跳转到result 所有返回值为“json”的action,都可以跳转到json.jsp
- OXM
O/X Mapper 是什么? Spring 3.0 的一个新特性是 O/X Mapper.O/X 映射器这个概念并不新鲜,O 代表 Object,X 代表 XML.它的目的是在 Java 对象(几乎 ...
- WMI入门
转:http://www.cnblogs.com/ceachy/archive/2013/03/21/WMI_What.html WMI入门(一):什么是WMI WMI出现至今已经二十多年了,但很多人 ...
- 超详细图解:自己架设NuGet服务器
原文:http://diaosbook.com/Post/2012/12/15/setup-private-nuget-server NuGet 是.NET程序员熟知的给.NET项目自动配置安装lib ...
- [转]Linux查看物理CPU个数、核数、逻辑CPU个数
From : http://www.cnblogs.com/emanlee/p/3587571.html # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个 ...
- php基础25:each()
<?php /* 返回当前元素的键名和键值,并将内部指针向前移动: */ $people = array("Bill", "Steve", "M ...
- Java系列:《Java核心技术 卷一》学习笔记,cchapter11 异常
11.1.1 异常分类 如果一个程序出现了RuntimeException,那么就一定是你的问题. 11.1.2 声明已检测异常 如果子类覆盖了父类的一个方法,那么子类方法中声明的检查 ...
- [Android] 安卓模拟器临时文件相关问题
今天生产环境有台机器的硬盘满了,排查发现我的模块在/tmp/android-username目录下留了一堆形如“emulator-1tpH5l”的文件,占用了很大的空间. 这个模块会反复启停好几个安卓 ...