Robot Framework常用关键字
虽然通过RIDE提供“填表”一样的写测试用例的方式。但它却支持强大的关键字功能,以及可以开发关键字的扩展能力。
Comment
注释功能,也可以使用python中的"#"
| Comment | 注释 |
|---|---|
| #注释 |
log
打印。类似于print
| log | Hello World |
|---|
set variable
定义变量
| ${a} | set variable | Hello World!!! |
|---|---|---|
| log | ${a} |
catenate
连接对象
| ${a} | catenate | hello | world |
|---|---|---|---|
| log | ${a} |
SEPARATOR
对多个连接进行分割(必须大写)
| ${a} | catenate | SEPARATOR=, | hello | world |
|---|---|---|---|---|
| log | ${a} |
create list
创建列表
| ${a} | create list | a | b | c |
|---|---|---|---|---|
| log | ${a} |
通过@{}定义列表
必须使用 log many 打印
| @{a} | create list | a | b | c |
|---|---|---|---|---|
| log many | @{a} |
get time
获取当前时间
| ${a} | get time |
|---|---|
| log | ${a} |
sleep
设置休眠时间
| ${a} | get time |
|---|---|
| sleep | 5 |
| ${a} | get time |
run keyword if
通过该语句可以编写if分支语句
| ${a} | set variable | 59 | ||
|---|---|---|---|---|
| run keyword if | ${a}>=90 | log | 优秀 | |
| ... | ELSE IF | ${a}>=60 and ${a}<90 | log | 一般 |
| ... | ELSE | log | 菜 |
:FOR
实现循环
| :FOR | ${i} | IN RANGE | 10 |
|---|---|---|---|
| log | ${i} |
列表遍历
| @{lista} | create list | a | b | c |
|---|---|---|---|---|
| :FOR | ${a} | in | @{lista} | |
| log | ${a} |
Exit For Loop If
退出循环的判断语句
| @{lista} | create list | a | b | c |
|---|---|---|---|---|
| :FOR | ${a} | IN | @{lista} | |
| exit for loop if | '${a}'=='b' | |||
| log | ${a} |
Evaluate
执行python中的方法
| ${a} | Evaluate | random.randint(1000,9999) | random |
|---|---|---|---|
| log | ${a} |
Import Library
导入标准和第三方模块或框架。比如调用unittest单元测试框架
| Import Library | unittest |
|---|
导入外部py文件
| Import Library | c:/test.py | ||
|---|---|---|---|
| ${sum} | add | 3 | 4 |
| log | ${sum} |
| Import Library | c:/test.py | ||
|---|---|---|---|
| ${a} | Evaluate | int(4) | |
| ${b} | Evaluate | int(5) | |
| ${sum} | add | ${a} | ${b} |
| log | ${sum} |
Take Screenshot
截取当前屏幕,Screenshot库为robot framework的标准类库,需手动加载

字典
Collections库:该库为Robot Framework标准类库,它提供的关键字主要用于列表、索引、字典的处理。需要手动加载。
Create Dictionary
创建字典
| ${dict} | Create Dictionary | sname | Luffy | age | 19 |
|---|
Get Dictionary Items
获取字典中的key和value
| ${item} | Get Dictionary Items | ${dict} |
| log | ${item} ||
Get Dictionary Keys
获取字典中的key
| ${keys} | Get Dictionary keys | ${dict} |
|---|---|---|
| log | ${keys} |
Get Dictionary Values
获取字典中的value
| ${values} | Get Dictionary Values | ${dict} |
|---|---|---|
| log | ${values} |
Get From Dictionary
根据key获取对应的value
| ${a} | Get From Dictionary | ${dict} | sname |
|---|---|---|---|
| log | ${a} |
Robot Framework常用关键字的更多相关文章
- Robot Framework常用关键字介绍
常用关键字介绍 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习 Robot Framework.虽然通过 RIDE 提供“填表”一样的写测试用 ...
- robot framework 常用关键字介绍
1.log 打印所有内容 log hello word 2.定义变量 ${a} Set variable 92 log ${a} 3.连接对象 ${a} Catenate hello word l ...
- Robot Framework 常用关键字使用方法
1. Select From Listid=sourceConnoracle_source 从下拉框选取值. 2. Select Radio button name value 选择单选框.也可以点 ...
- 三:robot framework常用关键字
该部分介绍的是内置库:Builtin,估不需要导入,即可使用 1.RF中定义一个变量: ${XXX} XXX表示:变量名 *** Settings *** *** Test Cases *** 定 ...
- robotframework的学习笔记(十三)------Robot Framework常用库简介
标准库 Robot Framework可以直接导入使用的库,包括: Builtin:包含经常需要的关键字.自动导入无需import,因此总是可用的 Dialogs:提供了暂停测试执行和从用户的输入方式 ...
- Robot Framework - 基础关键字 BuiltIn 库(二)
本篇教程,我们继续接着上篇内容进行讲解,我们本节教程讲解的是Robot Framework 机器人框架中的变量中使用判断.字符串的拼接.Evaluate的用法.调用Python文件.条件分支语句.以及 ...
- Robot Framework - 基础关键字 BuiltIn 库(一)
今天给大家分享的是Robot Framework 机器人框架中 BuiltIn 基础库的使用...BuiltIn 库里面提供了很多基础方法助力于我们在自动化测试领域中做的更好!——本系列教程是教会大家 ...
- Robot Framework常用库简介
标准库 Robot Framework可以直接导入使用的库,包括: • Builtin:包含经常需要的关键字.自动导入无需import,因此总是可用的 • Dialogs:提供了暂停测试执行和从用户的 ...
- Robot Framework常用的操作库列表
标准库是Robot Framework可以直接导入使用的库,包含以下几类: Builtin:包含经常需要的关键字.自动导入无需import,因此总是可用的 Dialogs:提供了暂停测试执行和从用户的 ...
随机推荐
- JAVA并发-ReentrantReadWriteLock
简介 读写锁维护着一对锁,一个读锁和一个写锁.通过分离读锁和写锁,使得并发性比一般的排他锁有了较大的提升:在同一时间可以允许多个读线程同时访问,但是在写线程访问时,所有读线程和写线程都会被阻塞. 读写 ...
- 【使用篇二】SpringBoot文件上传(5)
一.单个文件上传 1. 在static目录下创建upload.html <!DOCTYPE html> <html> <head> <meta charset ...
- VIJOS-P1450 包裹快递
洛谷 P1542 包裹快递 https://www.luogu.org/problem/P1542 JDOJ 1527: VIJOS-P1450 包裹快递 https://neooj.com/oldo ...
- 使用dva 的思考的一个问题,数组复制的必要
*getTags({ payload }, { call, put }) { const response = yield call(getTags, payload); const arr = re ...
- 11/10 <priorityQueue> 215 347
215. Kth Largest Element in an Array 快速排序法,选择一个数,比这个数大的交换到左边,比这个数小的交换到右边. class Solution { public in ...
- 2.Python学习之路
这里主要更新Python每个部分知识点的详细的目录...(知识点目录) Python基础 一.计算机基础 二.Python基础 三.函数 四.常用模块 五.模块和包 六.面向对象 Python进阶 七 ...
- AtCoder Grand Contest 040 简要题解
从这里开始 比赛目录 A < B < E < D < C = F,心情简单.jpg. Problem A >< 把峰谷都设成 0. Code #include &l ...
- oracle--10.2.0.3升级到11.2.0.4
一,环境 01,待升级的系统 升级仅支持10.2.0.2版本之后的系统,如果不是,请把10G升级至高版本! 本次实验环境10.2.0.3 02,挂载11G系统 03,升级须知 1) 做好备份 二,DB ...
- java web开发入门十二(idea创建maven SSM项目需要解决的问题)基于intellig idea(2019-11-09 11:23)
一.spring mvc action返回string带双引号问题 解决方法: 在springmvc.xml中添加字符串解析器 <!-- 注册string和json解析适配器 --> &l ...
- Scala 定义复杂枚举
通常我们需要枚举参数不止两个,Scala提供的枚举类最多定义两个参数:id:Int与name:String.不能满足我们通常要求. object BaseEntryEnum extends Enume ...