RobotFramework测试框架(10)--资源文件

测试套件中的用户关键字和变量只能在创建它们的文件中使用,但是resource file可以共享它们。创建资源文件的语法与创建测试套件的语法一样,只是资源文件中没有测试用例即TestCase。

资源文件使用文本格式创建,也可以使用重组文件格式或者json格式。

什么是资源文件?

RF资源文件是Robot Framework(RF)层面的库文件,其主要作用是提供一种共享用户关键字和变量的机制。资源文件中可以包含用来共享的用户关键字,也可以包含Variable表定义的变量。这使得在多个测试套件或测试用例中可以重用这些关键字和变量,提高了测试代码的可维护性和复用性。

用户关键字类似于RF层面的函数,可以把多个关键字操作组成一个“宏”关键字。在RF中,用户关键字是通过Keywords表来定义的,其定义和写一个用例的写法很像,参数支持[Arguments]和返回值[Return]。定义好用户关键字后,该测试套件里面就可以使用该用户关键字了,就像使用库关键字一样。

资源文件的格式基本和测试套件文件类似,除了不能有测试用例表和一些特别的设置项外,其它的都是跟普通的测试套件文件一样的。如果它有Test Case,那它就是一个正常的测试套件文件,而不是资源文件。

在测试用例文件或测试套件初始化文件中定义的用户关键字和变量,只能在创建它们的文件中使用。而通过使用资源文件,可以在多个测试套件或测试用例中共享这些用户关键字和变量。在设置表中使用资源设置来导入资源文件,资源文件的路径可以在设置名称后的单元格中指定。

总的来说,RF资源文件是Robot Framework中一个重要的概念,它极大地提高了测试代码的可重用性和维护性,是编写高效、可维护的自动化测试脚本的关键工具之一。

如何使用资源文件

资源文件在Settings中使用Resource导入,推荐的扩展名是.resource,为了兼容性,也支持扩展名是.robot,.txt,.tsv格式,未来可以强制为.resource格式。
如果资源路径是绝对路径,则可以直接使用,否则,会先搜索导入路径,如果没有找到资源文件,会从python的模块搜索路径查找。
资源文件的路径可以包含变量,并且建议使用以使路径进行独立于系统。如${RESOURCES}/common.resource或 ${RESOURCE_PATH}

*** Settings ***
Resource    example.resource
Resource    ../resources/login.resource
Resource    package/example.resource
Resource    ${RESOURCES}/common.resource

资源文件中的用户关键字和变量可以在导入资源文件的文件中使用。

资源文件的结构

资源文件的结构和测试套件一样,只是不包含tests和tasks。另外,资源文件的Setting部分只能导入Library,Resource和Variables,Documentation和Keyword Tag,用户关键字部分和变量部分则和在测试套件中使用方法一样。

如果几个资源文件有相同的关键字,则调用的时候需要用前缀如myresources.SomeKeyword,另外,如果资源文件包含相同的变量,则会使用首先导入的那个资源文件。

*** Settings ***
Documentation     An example resource file
Library           SeleniumLibrary
Resource          ${RESOURCES}/common.resource

*** Variables ***
${HOST}           localhost:7272
${LOGIN URL}      http://${HOST}/
${WELCOME URL}    http://${HOST}/welcome.html
${BROWSER}        Firefox

*** Keywords ***
Open Login Page
    [Documentation]    Opens browser to login page
    Open Browser    ${LOGIN URL}    ${BROWSER}
    Title Should Be    Login Page

Input Name
    [Arguments]    ${name}
    Input Text    username_field    ${name}

Input Password
    [Arguments]    ${password}
    Input Text    password_field    ${password}
  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值