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 ...
随机推荐
- Python-操作Memcache、Redis、RabbitMQ、
Memcache 简述: Memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的.需要 ...
- iOS中使用RSA对数据进行加密解密
RSA算法是一种非对称加密算法,常被用于加密数据传输.如果配合上数字摘要算法, 也可以用于文件签名. 本文将讨论如何在iOS中使用RSA传输加密数据. 本文环境 mac os openssl-1.0. ...
- 【转】MySQL 性能优化的最佳20多条经验分享
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情. 当我们去设计数据库表结构,对操 ...
- C# LUA 闭包
许多语言中有闭包的概念,C#的闭包以lambda表达式表现,可以实现与LUA完全一样的效果. //LUA------------------------------------------------ ...
- python学习三
输入与输出 print()在括号中加上字符串,就可以向屏幕上输出指定的文字. >>>print('hello world')hello world print()函数也可以接受多个字 ...
- .NET性能调优之一:ANTS Performance Profiler的使用
.NET性能调优系列文章 系列文章索引 .NET性能调优之一:ANTS Performance Profiler的使用 .NET性能调优之二:使用Visual Studio进行代码度量 .NET性能调 ...
- 泛型委托 Predicate/Func/Action
Predicate 泛型委托 表示定义一组条件并确定指定对象是否符合这些条件的方法.此委托由 Array 和 List 类的几种方法使用,用于在集合中搜索元素.看看下面它的定义: // Summar ...
- Quartz.net打造信息抽取器
由于最近的一个项目需要定时抽取特定XML信息,然后保存到数据库,最后通过WebApi把手机端要使用的方法给暴露出来,所以去研究了一下Quartz.net.由于项目很小,我没用到Autofac,Repo ...
- 2015年新版C#从入门到精通(第2版)视频教学录像【无水印版】
<c#从入门到精通(第2版)>以零基础讲解为宗旨,用实例引导读者学习,深入浅出地介绍了c#的相关知识和实战技能.<c#从入门到精通(第2版)>第1篇[c#语言基础]主要讲解c# ...
- ActionBar在Android2.x的实现,类似新版微信界面。
ActionBar完美兼容Android4.x的机型,虽然现在Android2.x的系统越来越少,还有有一部分人使用的仍是2.x的系统,所以我们还得考虑着兼容性问题. 对比图: Test例子与微信的对 ...