• Robot Framework--标签Tag


       Robot Framework的标签是一个简单而又强大的分类机制,功能如下:

    • 标签在reports,logs以及测试数据中展示,显示关于测试用例的元数据信息
    • 用例的执行统计(total,passed,failed就是自动基于标签收集的)
    • 使用标签,可以包含或排除测试用例来执行
    • 使用标签,可以指定哪些是关键用例

        标签的几种方式:

    • Force Tags:包含该设置的测试用例文件中所有用例都被指定打上这些标签
    • Default Tags:没有单独设置Tags的用例将被打上这些默认标签
    • [Tags] in the Test Case table:每个测试用例各自要打的标签,如果设置了,就不再包含Default Tags。所以可以通过设置一个空值来覆盖默认标签,也可用NONE。
    • --settag 命令行选项:所有通过包含该选项的命令执行的测试用例,除了已有的标签,都会再加上选项中指定的标签。

        标签本身就是任意的文本,但是它们会被标签化:去除所有的空格,全部转为小写。如果一个用例被打上相同的标签多次,仅保留第一个。标签可以使用变量来创建,只要变量存在即可。

        建议使用标签来指定环境或用户信息等这类元数据。

    示例:

    *** Test Cases ***
    
    登录
        [Tags]    dltest
        登录app    15000000001    mima    161a3797c824bccd58c    
    
    
    *** Keywords ***
    登录app
    [Arguments]   ${username}   ${password}     ${jPushId}   ${ssohost}=${EMPTY}
    log 开始登录
    ${data}= Create Dictionary    loginName=${username}    password=${password}    jPushId=${jPushId}
    ${json}= Rest.post /rest/account/login    ${data}    form    ${ssohost}
    Should Be True ${json["success"]}
    
    
    Rest.post
    [Arguments]    ${uri}    ${params}    ${type}=form    ${cur_host}=${EMPTY}
    #设置代理服务器,方便调试
    ${proxy}= Create Dictionary    http=http://1270.0.1:8888
    ${host}= Set Variable    ${EMPTY}
    : FOR    ${tag}    IN    @{TEST TAGS}
     ${host}=    Evaluate    $hosts.get($tag,"")
     Run Keyword If    "${host}"!=""    Exit For Loop
    #创建session,跨域模式,不需要维护Session
    Run Keyword If    "${cur_host}"!=""    Create Session _session    ${cur_host}
    ... ELSE    Create Session    _session    ${host}
    #根据请求数据的类型设置header
    ${headers}=    Run Keyword If    "${type}"=="form"    Create Dictionary    Content-Type=application/x-www-form-urlencoded
    ... ELSE IF    "${type}"=="json"    Create Dictionary    content-Type=application/json
    ${response}=    Post Request    _session    ${uri}    ${params}    headers=${headers}
    Should Be Equal As Strings    ${response.status_code}    200
    log    ${response.text}
    ${json}=    Set Variable    ${response.json()}
    [Return]    ${json}

    原文地址:https://www.cnblogs.com/chengchengla1990/p/8922090.html

  • 相关阅读:
    c++可调用对象使用示例
    c++ 线程绑定到cpu指定核心
    const在*左边和*右边的区别
    linux c 根据程序名获取进程号
    多线程程序获取进程号和线程号
    虚函数中的默认参数
    ElasticSearch常用查询
    windows10安装windows版Redis
    20220319 14:45:10
    20220320 08:00:06
  • 原文地址:https://www.cnblogs.com/dydxw/p/10537300.html
Copyright © 2020-2023  润新知