• RobotFramework用户关键字(一)


    一 用户关键字

      Robotframework是一个用python写的基于关键字驱动的自动化测试框架。既然是基于关键字驱动的,那么关键字的编写和使用就是平时工作的核心。这篇文章主要整理一下如何根据已有的关键字来创建新的关键字,以及关键字的使用。
      虽然RF自带的测试库和各种第三方库提供了大量的关键字,但在实际工作中这些关键字一般还不能满足工作需求的,这时候我们就需要根据RF自带的测试库和各种第三方库提供的关键字来创建新的关键字这个新的关键字就叫用户关键字,用户关键字可以相互调用。

    1. 创建用户关键字

      用户关键字的识别是以*** Keywords *** 开始的,它可以在用例文件中创建,也可以单独拿出来做为资源文件使用,工作中一般使用资源文件形式存在的。它的模板如下

    *** Keywords ***
    #用户关键字语法
    keyword_name: 关键字名称
        [Arguments]        关键字参数: 位置参数>默认参数>@参数>&参数
        [Documentation]    关键字文档说明
        [Tags]             关键字标签
        [Timeout]          运行关键字的超时时间
        step1              关键字步骤
        step2
        ...
        [Teardown]          关键字的收尾工作
        [Return]            关键字返回值:RF5.0以前是用return from keyword
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    其中[Agruments]入参参数和[Return] 返回参数用的最多。

    • 在用例文件中创建用户关键字
      在执行用例时有时想把公共的一部分提出来,只想在本案例文件中使用,不想作为资源文件使用,这时候我们就可以在案例文件中创建一个用户关键字。
      如下,就是在案例文件中创建一个拼接字符串的关键字
      在这里插入图片描述
      在这里插入图片描述

    • 在资源文件中创建用户关键字
      很多时候我们创建的用户关键字会单独形成一个资源文件,因为很多地方都会用到,形成一个公共资源文件,用的时候只要引入这个文件即可。
      如下,创建一个获取系统日期的用户关键字,把它放在一个公共资源文件中
      在这里插入图片描述
      在使用的时候只要引用这个文件就可以了
      在这里插入图片描述在这里插入图片描述

    2. 用户关键字的使用

      由于用户关键字只在创建的那个文件中生效,所以非关键字所在文件的案例要使用关键字时,要用Resource来引用关键字所在文件;案例和用户关键字在同一个文件时,则可以直接使用关键字。
    在这里插入图片描述

    3. 用户关键字参数

      RF和python函数一样,也有位置参数,默认参数和缺省参数,参数位置关系一般是位置参数>默认参数>@参数(相当于python中的*kags)>&参数(相当于python中的**kwargs)。[Arguments] 后面跟的就是关键字参数。

    示例如下
    在这里插入图片描述
    调用传参和结果如下
    在这里插入图片描述
    在这里插入图片描述

    4. 用户关键字返回参数

    用户关键字返回参数和python函数一样,也可以返回一个值或者多个值。RF中用 [Return] 来返回值。
    示例如下
    在这里插入图片描述

  • 相关阅读:
    NPS:使用 Windows NPS Server 部署 802.1X 无线认证(2)
    信息论基础第二章部分习题
    redux使用,相当于vue中的vuex
    数据接口工程对接BI可视化大屏(一)
    java旋转base64位,自定义旋转角度角度
    [论文-ing]Weakly Supervised Universal Fracture Detectionin Pelvic X-rays
    隐入尘烟影评
    【0107】 启动XLOG机制(1)
    uniapp vue2、vue3 页面模板代码块设置
    谷歌浏览器关闭自动更新功能
  • 原文地址:https://blog.csdn.net/qq_44690947/article/details/133822929