zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    HTTP断点续传 规格严格
    Java Shutdown 规格严格
    linux 命令源码 规格严格
    JTable调整列宽 规格严格
    linux 多CPU 规格严格
    Hello can not find git path 规格严格
    Kill 规格严格
    拜拜牛人 规格严格
    Swing 规格严格
    Debugging hangs in JVM (on AIX but methodology applicable to other platforms) 规格严格
  • 原文地址:https://www.cnblogs.com/dydxw/p/10537300.html
Copyright © 2011-2022 走看看