常用关键字介绍

  在学习一门编程语言的时候,大多教材都是从打印“hello world”开始。我们可以像编程语言一样来学习 Robot Framework。虽然通过 RIDE 提供“填表”一样的写测试用例的方式。但它却有着像编程语言一样的强大的关键字,以及可以开发关键字的扩展能力。

1、log 就是“print”

log 关键字就是编程语言里的“print”一样,可以打印任何你想打印的内容。勾选测试用例,点击工具栏的“Run Tests”按钮或按快捷键“F8”执行测试用例。如图:

 
在 Run 标签页,将看到执行结果:
通过运行结果中看到,“INFO:”的“hello world” 就是通过 log 关键字打印的信息。

2、定义变量

在 robot Framework 中通过“Set variable”关键字来定义变量,如:

执行结果:

3、连接对象

“Catenate”关键字可以连接多个信息:

执行结果:

加上“SEPARATOR=”可以对多个连接的信息进行分割

执行结果:

4、定义列表

通过“Create List”关键字可以定义列表:
例 1:

例 2
如果通过“@{}”去定义列表的话,可以通过“log many”关键字进行打印:

 

执行结果:

5、时间的操作

在 Robot Framework 中也提供操作时间的关键字。
1) Robot Framework 中提供了“get time”关键字用来获取当前时间。

测试结果:

2) “sleep”关键字用来设置休眠一定时间

测试结果:

6、if 语句

通过“run keyword if”关键字可以编写 if 分支语句。

首先定义两个变量 a 等于 100
If 判断 a 大于等于 90 ,满足条件 log 输出 “优秀 ”;
不满足上面的条件,接着 else if 判断 a 大于等于 70 ,满足条件 log 输出 “良好”;
不满足上面的条件,接着 else if 判断 a 大于等于 60 ,满足条件 log 输出 “及格”;
上面的条件都不满足,else
log 输出“不及格”。
注:注意 sele if 和 else 前面的三个点点点(...)

执行结果:

7、for 循环

例 1,执行 10 次循环

在 Robot Framework 中编写循环通过“FOR”

通过“FOR”定义 for 循环;in range 用于指定循环的范围,END结束循环

执行结果:

注意,in range 定义为 10,它的范围是 0~9

例 2,遍历列表

“create list” 关键字用来定义列表(a,b,c),“@{}”用来存放列表。

执行结果:

通过过“:for”循环来来遍历@{abc}列表中的字符。

例 3,循环中的判断

通过“Exit For Loop If”关键字时行 for 循环内的判断,当满足 Exit For Loop If 条件后,循环结束。

执行结果:

从执行结果看到当循环到字符 c 时,Exit For Loop If 条件成立,结束循环;通过 log 打印当前的字符 c。

例 3,循环中的判断

8、强大的 Evaluate

为什么说“Evauate”关键字强大呢。因为通过它可以使用 Python 语言中所提供的方法。

例 1,生成随即数

在 Robot Framework 中使用“Evauate”也可以调用 Python 所提供的 random 模块下的 randint()方法。

执行结果:

9、导入库

在 Python 语言中可以使用 import 导入标准和第三方模块或框架。那么在 Robot Framework 中也提供了“Import Library”关键字来完成这个事情。

9.1调用框架

  我们导入了 Python 标准的单元测试框架 unittest。当然,在 Robot Framework 中并不能使用 unittest单元测试框架。这只里只演示“Import Library”等同于 Python 语言中的 import。
  假如我们通过“Import Library”导入一个不存在的模块,然后运行测试用例:
执行结果:

9.2调用 Python 文件

首先创建 test.py 文件:
#coding=utf-8

def add(a,b):
return a+b if __name__ == "__main__":
a = add(4,5)
print a
  运行结果为 9,这是再简单不过的小程序了。
  下面就通过 Robot Framework 调用 test.py 文件中的 add()函数。

执行结果:

从执行结果中看到和预想的结果不是样,不应该是 9 么?怎么是 45。这是因为 Robot Framework 把 4和 5 当前两个字符串。所以 4 和 5 拼接起来是 45。我们可以将 4 和 5 转化成 int 类型,再调用 add。

执行结果:

通过“Evaluate”转化成为 int 类型后,再调用 add 就得到了想要的结果。

10、注释

Robot Framework 中添加注释也非常简单。“Comment”关键字用于设置脚本中的注释。
除此之外,你也可以像 Python 一样使用“#”号进行注释。

这一小节中介绍的关键字全部由 Builtin 库提供,Builtin 为 Robot Framework 标准类库。Builtin库提供常用的关键字。

robot_framewok自动化测试--(4)常用关键字介绍的更多相关文章

  1. Robot Framework常用关键字介绍

    常用关键字介绍 在学习一门编程语言的时候,大多教材都是从打印“hello world”开始.我们可以像编程语言一样来学习 Robot Framework.虽然通过 RIDE 提供“填表”一样的写测试用 ...

  2. 二、robotframework接口测试-常用关键字介绍

    1.常用关键字介绍: a. 打印:log                                                  用法:log   打印内容 ---------------- ...

  3. Robot Framework学习笔记(三)------常用关键字介绍

    下面关键字全部由 Builtin 库提供,Builtin 为 Robot Framework 标准类库.Builtin库提供常用的关键字 1.log log 关键字就是编程语言里的"prin ...

  4. robot framework 常用关键字介绍

    1.log 打印所有内容 log hello word 2.定义变量 ${a} Set variable 92 log ${a}   3.连接对象 ${a} Catenate hello word l ...

  5. Robotframework自动化4-基础关键字介绍1

    前言 上一节已经介绍了APP的启动,那我们就会看到我们引用了一些关键字,对于AppiumLibrary都有哪些常用的关键呢,这一节主要介绍这一部分. AppiumLibrary 常用关键字介绍 1.关 ...

  6. Redis常用数据类型介绍、使用场景及其操作命令

    Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...

  7. 以太坊智能合约 Solidity 的常用数据类型介绍

    目录 目录 1.数组 1.1.对数组的增删改查操作. 2.String.Bytes.Mapping的使用 3.Enums 和 Structs 的简单应用 4.Ether 单位和 Time 单位 5.A ...

  8. AppiumLibrary常用关键字

    通过上一章节,open application关键字的使用,相信大家对手机自动化充满了兴趣,那么今天这一章节,主要介绍AppiumLibrary中常用关键字的使用. 一.实用函数 关键字 含义 实例 ...

  9. [Java并发编程(三)] Java volatile 关键字介绍

    [Java并发编程(三)] Java volatile 关键字介绍 摘要 Java volatile 关键字是用来标记 Java 变量,并表示变量 "存储于主内存中" .更准确的说 ...

随机推荐

  1. 接口管理工具swagger

    swagger,一款致力于解决接口规范化.标准化.文档化的开源库,一款真正的开发神器. swagger三大部分 Editor https://swagger.io/tools/swagger-edit ...

  2. centos查找大文件

    首先到相当的目录下面,按下面方式查找 find . -type f -size +800M  -print0 | xargs -0 ls -lah或者从根目录(/)开始查找find / -type f ...

  3. Sql 小技巧(持续汇总)

    身份证号加密 select concat(left(`visitors`.`Card_id`,3),'****',right(`visitors`.`Card_id`,4)) AS `Card_id` ...

  4. P3426-[POI2005]SZA-Template【KMP】

    正题 题目链接:https://www.luogu.com.cn/problem/P3426 题目大意 给出一个长度为\(n\)的字符串\(s\),求一个长度最小的字符串\(t\)使得\(s\)所有\ ...

  5. es相关监控指标梳理

    ###################ElasticSearch监控指标梳理########################### #author:lugh1 # #date:2021-09-26 # ...

  6. Mysql explain中key_len的作用及计算规则

    key_len表示索引使用的字节数,根据这个值可以判断索引的使用情况,特别是在组合索引的时候,判断该索引有多少部分被使用到非常重要. 在计算key_len时,下面是一些需要考虑的点: 索引字段的附加信 ...

  7. Excel备忘录

    1. 导入文本文件(.txt) 2. 排序 3. 批量填充空白 选定区域,Ctrl+G,定位,空值. 输入内容,Ctrl+Enter. 4. 清除无法修改的背景色. 5. 身份证号 数字精度为15位, ...

  8. NOIP 模拟 六十九

    0+30+40+90, 菜..... T1 取石子 考试扔了将近两个小时,最后也没有回忆起博弈论的相关内容.. 现在只会50pts.正解待补. #include<bits/stdc++.h> ...

  9. 移动端多个DIV简单拖拽功能

    移动端多个DIV简单拖拽功能. 这个demo与之前写的一个例子差不了多少,只是这个多了一层遍历而已. <!DOCTYPE html> <html lang="en" ...

  10. 题解 有标号DAG计数

    题目传送门 题目大意 给出\(n\),求出对于任意\(t\in[1,n]\),点数为\(t\)的弱联通\(\texttt{DAG}\)个数.答案对\(998244353\)取模. \(n\le 10^ ...