zoukankan      html  css  js  c++  java
  • robot framework-tags(标签)实例

        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}
  • 相关阅读:
    从干将莫邪的故事说起--java比较操作注意要点
    我又不是你的谁--java instanceof操作符用法揭秘
    色即是空,空即是色---java有关null的几件小事
    大头儿子和小头爸爸的战斗--java字符和字符串
    你的环境有问题吧?--byte数组转字符串的疑惑
    两小无猜的爱恨情仇--java =+和+=揭秘
    java程序猿如何练习java版的易筋经?
    孙悟空的七十二变是那般?--java类型的七十二变揭秘
    leetcode 341. Flatten Nested List Iterator
    leetcode 44. Wildcard Matching
  • 原文地址:https://www.cnblogs.com/chengchengla1990/p/8922090.html
Copyright © 2011-2022 走看看