python自动化RobotFramework中userkeyword和resource文件(六)
用户关键字user keyword,类似于python中的函数,我们可以调用它实现特定的功能。
作者:科雷软件测试
学习目录
前言介绍
1、 在测试套件Suite中创建用户关键字
创建用户关键字
测试用例引用关键字
2、 通过resource.robot文件创建用户关键字
创建resource文件
在resource文件中创建用户关键字userkeyword
测试套件中引用resource文件
测试用例中引用resource中的关键字
3、查找关键字的使用位置
前言介绍
用户关键字user keyword,类似于python中的函数,我们可以调用它实现特定的功能。
下面主要介绍在测试套件中创建用户关键字和在resource文件中创建关键字。
在测试套件Suite中创建用户关键字
1、创建用户关键字
选中Suite1(创建时选择Type为File类型),点击右键,选择“New User Keyword”,创建用户关键字。

在弹出的对话框中填入关键字的名称(中文或者英文)和参数。

- 如果不需要参数,可以不用填写。
- 参数格式如${message},需要美元符号和大括号。
- 有多个参数时以“|“竖线分割
- 支持默认值,比如${arg}=1;调用时不需要带美元符号和大括号,直接使用arg=1
- 传入字符串时,不需要添加引号,比如${arg}=failed
填写保存后,在右侧Edit编辑框,有几项设置需要说明下:
Arguments: 设置的参数
TearDown: 类似于之前文章介绍suite和testcase中的TearDown,此处也是当关键字执行结束后(成功或者失败)需要做的操作,多用于数据清理等善后操作。
Return Value:类似于python函数的return返回,可以接收赋值给变量。多个时以“|”竖线分割。
我们编辑下关键字,并打印传入的参数和参数的数据类型。在Text Edit编辑区域如下:
*** Keywords ***
打印日志
[Arguments] ${message} # 打印传入的信息
log ${message}
#打印传入的参数类型
${data_type} Evaluate type(${message} )
log ${data_type}
[Teardown] log 关键字执行后做一些善后操作
[Return] ${message} # 返回数据赋值给变量
2、测试用例引用关键字
因为是在Suite下直接创建的关键字,测试用例可以直接使用。
在case1中输入“打印”,按住“Alt + 空格”健,联想出关键字,并展示该关键字的信息。
关键字显示蓝色代表可用,并在后面显示红色的参数框,提示我们需要传入参数
而且按住“Ctrl”健,用鼠标点击蓝色的关键字,可以跳转到关键字的位置。
接下来我们输入1个参数并将关键字的返回值赋值给一个变量:
- 参数输入“大家都很棒”

执行后发现有报错:

原因是:RobotFramework输入的参数,如果是字符串,它是不加引号的,当传入这个函数type()时,就会报NameError。 后续大家自己传字符串参数用于if条件判断或者断言时先将参数转为字符串。
- 传入参数“123456”

执行后结果为pass:参数的类型为整形,return的返回值也能正常接收并打印


通过resource.robot文件创建用户关键字
1、创建resource文件
选中工程、目录、type为目录的Suite、或者type为File的Suite,点击右键都可以选择“New Resource”创建一个resource资源文件

输入Name,选择一个Format,默认可以不选择,这几种类型只是文件后缀不一样,效果是一样的。

点击ok,并点击上方的保存按钮。
编辑区域如右边所示,跟之前文章介绍的一样,也可以导入
library/resource/variables等内容,提供给resource下的用户关键字调用,跟测试套件和测试用例使用方式一致。
2、在resource文件中创建用户关键字userkerword
右键resource文件,选择“New User Keyword”,创建用户关键字。

创建的过程,跟上面在Suite中创建时一样,此处不再介绍。我们直接复制过来使用。
3、测试套件中引用resource文件
选中测试套件右侧编辑区域的“Resource”按钮,导入上方创建的resource文件。
选择所在路径后,点击ok。
显示蓝色表示引用正确。
4、测试用例中引用resource中的关键字
关键字使用跟上方Suite引用关键字方式完全一致,此处也不再介绍。
引用之后,大家可以看到这个关键字的位置是来自于之前创建的resource文件。

查找关键字的使用位置
- 选中resource文件或者关键字,单击右键,选择“Find Usages”可以查询它的引用方。

- 在测试用例中选中一个关键字,单击右键,选择“Find WhereUsed”也可以查询调用它的位置。


共勉: 东汉·班固《汉书·枚乘传》:“泰山之管穿石,单极之绠断干。水非石之钻,索非木之锯,渐靡使之然也。”
-----指水滴不断地滴,可以滴穿石头;
-----比喻坚持不懈,集细微的力量也能最终成就难能的功劳
更多推荐




所有评论(0)