robotframework用户关键字创建过程

Posted CQUqinghua

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了robotframework用户关键字创建过程相关的知识,希望对你有一定的参考价值。

robotframework是一个关键字驱动框架,核心在于关键字的应用。系统本身通过各种库自带了大量关键字,同时支持用户自定义关键字。关键字可以简单理解为各种处理数据的方法。

关键字区别与用户参数。

   为什么使用用户关键字:

   以selenium库为例,在robotframework中,提供了大量函数,来执行浏览器操作。可以直接把参数写在用例中。

例如:

 

 

 

又例如:

 

可以看出,上述参数设置维护性差,且复用差。如果涉及大量重复使用参数,上述写法将导致开发效率极差。robotframework实现了流程层和元素层分离的分层方法。

创建用户关键字大体步骤如下:

  1、创建资源文件

  为了方便更好的管理,我们可以重新创建一个目录专门拿来存放用户关键字、数据等资源。同时为了更好的管理关键字,我们把关键字放在不同的resource模块下,也就是先创建resource,再在resource下创建具体的关键字。

 

 

 

 如下图例,说明参数文件中用户关键字的设置:

 

 

  • Arguments:设置传入参数

      变量类型:robotframework里的变量分两种。一种是Scalar,可以理解为单值变量。Scalar型变量用$符号开头。

      在使用上要注意看关键字的参数到底是Scalar的还是List,区别就是看变量名前面是否有 * (星号)。

       一种是List Variable,list型变量,或者可以理解为数组变量。List型变量用@符号开头。理论上可以互相进行转换,视为同一变量。所以注意尽量不要让取值不同的Scalar和List的变量重名,以免冲突。

   arguments写法注意点:

   1、多个传入值之间以“|”分隔。

   2、${xx}=${EMPTY},这样书写就表示该变量可以不传;

   3、${xx}=xx,这样书写表示如果该变量没传值,则会默认使用xx作为变量的值

   4、${xx},这样书写则表示该值必填。

   5、必填参数必须位于最前面,后面再跟可以为空和有默认值的参数(这两个没有顺序之分)

   6、List变量也是可以作为参数,但是List变量只能放在最后一位。1维变量,元素引用使用${list[n]}(从0开始,长度-1  结束)。二维变量用${list[n][m]}(从0开始,长度-1  结束)。

例如:

 

 

Teardown:设置完成时的动作

    表示在这个用户关键字执行完成之后会执行什么关键字。比如写上Close All Browsers。在这里也可以处理返回值

ReturnValue:返回值

    写法同arguments类似。

Timeout:超时时间

   单位默认分钟。超过设置时间则关键字失败。

 

以上是关于robotframework用户关键字创建过程的主要内容,如果未能解决你的问题,请参考以下文章

RobotFramework特性总结

怎么样导入RobotFramework 自定义关键字

怎么样导入RobotFramework 自定义关键字

如何在 RobotFramework 中进行多行测试设置或拆卸而不创建新关键字?

UI自动化在RobotFramework中采用的分层设计

robotframework常用的几个快捷键