RobotFramework关键字

在RF中,关键字是一个非常重要的存在。任何功能,都是通过关键字来实现的。

1.什么是关键字

一句话描述:一个关键字就是实现了特点的功能, 使用一个关键字,就等于是去使用了一个功能。例如:在生活中,厨师做饭使用了厨房,人睡觉使用了床等等。同理 ,那在RF中,输出文本使用了关键字:log;创建变量使用了关键字:set Variable; 执行python语句使用关键字:evulate。其次我们在使用有些功能的时候 ,需要提供一定的数据,才可以正常使用功能。比如乘坐高铁时必须有身份证和高铁票这两样数据,才能够成功的使用高铁出行这个功能。那么在RF中,自然也会有类似这样的场景需求。表达形式就是在使用关键字的时候,需要同时传入参数数据。 注意:

RF中的关键字,其实就可以对于python中的函数。所以关键字由关键字名称、参数、返回值三部分组成。

2.RF中关键字来自哪里,有哪些类型呢?

既然RF中的关键字,与python中的函数保持一致。那么函数来自于哪里,基本上关键字也就来自于哪里。python中函数主要来自于:Python内置、Python第三方库、用户自定义模块和包。

在RF中,就不得不说另外一个重要的存在:库。

库:理解为功能仓库,即封装了一系列功能。

关键字按照用途分门别类的放在不同的功能仓库中。

RF在安装成功之后,会自带标准库。标准库中均是关键字。 相对应python自带的函数。

RF也支持丰富的第三方库。 相对于Python第三方库

也支持用户利用Python或者Java语言编写自己的第三方库。对应用户自定义的模块和包

下图为库与关键字的关系图:

Robot Framework关键字类型_Robot

上图中的系统关键字又是什么呢?

在RF中,关键字也分为两种类型:系统关键字和用户关键字。

系统关键字:来自于测试库。可以是标准库、第三方库,也可以是用户用编程语言定义的。 用户关键字:利用RF编辑工具,按照RF的语法规则定义的关键字(而不是直接写代码)。于测试而言,一般来说用户关键字都跟系统业务有关。

3.用户关键字

用户自定义关键字

关键字表用于通过将 现有关键字 组合在一起来创建新的 更高级别的关键字。这些关键字称为 用户关键字,以区别于测试库中实现的最低级别的库关键字。创建用户关键字的语法与创建测试用例的语法非常接近,这使它易于学习。

用户关键字语法

在许多方面,整个用户关键字语法与 测试用例语法相同。用户关键字是在 关键字表 中创建的,这些关键字表与测试用例表的区别仅在于用于标识它们的名称。用户关键字名称在第一列中与测试用例名称相似。

用户关键字根据已有的关键字创建,可以是测试库中的关键字,也可以是其他用户关键字。关键字名称通常在第二列中,但是如果关键字有 返回值,它们在随后的列中。

例如:

*** Settings ***
Library  SeleniumLibrary
​
*** Keywords ***
百度搜索京东
    open browser  http://www.jd.com  chrome
    input text  id=kw  京东
    click element  id=su
    close browser
​
*** Test Cases ***
caset01
    百度搜索京东

更多文章请关注《万象专栏》