• Robot Framework:Httplibrary库


    1.源码安装,下载url:https://github.com/peritus/robotframework-httplibrary/

    2.RF导入库:HttpLibrary.HTTP

    3.关键字描述及使用

    关键字

    使用描述

    DELETE

    向服务器端发送http delete请求,该请求接收一个参数[ url ],请求的方式和post请求非常类似,示例:

    DELETE

    /_utils/config.htm

    HEAD

    向服务器端发送http HEAD请求,该请求接收一个参数[ url ],请求的方式和get请求非常类似,示例:

    HEAD

    /_utils/config.htm

    PUT

    向服务器端发送http PUT请求,该请求接收一个参数[ url ],请求的方式和post请求非常类似,示例:

    PUT

    /_utils/config.htm

    Get Json Value

    获取Json字符串中某个节点的值,示例:

    ${value}

    Get Json Value

    {"foo": {"bar": [1,2,3]}}

    /foo/bar

    Should Be Equal

    ${value}

    [1, 2, 3]

    Json Value Should Equal

    这是一个断言关键字,用来判断json字符串的某个节点对应的值是不是和预期一致,示例:

    ${json}

    Set Variable

    {"foo": {"bar": [1,2,3]}}

    Json Value Should Equal

    ${json}

    /foo/bar

    [1, 2, 3]

    Json Value Should Not Equal

    这是一个断言关键字,用来判断json字符串的某个节点对应的值是不是和预期不一致,当不一致时,执行成功,否则执行失败,示例:

    ${json}

    Set Variable

    {"foo": {"bar": [1,2,3]}}

    Json Value Should Not Equal

    ${json}

    /foo/bar

    [1, 2, 3]

    Log Response Body

    打印出http请求执行后的 Response Body内容,该关键字一般在post请求或者get请求发出后使用。该请求接收一个参数[ log_level=INFO ],在没有传入日志级别参数时,默认使用info级别来打印日志。

    Log Response Headers

    打印出http请求执行后的 Response Headers内容,该关键字一般在post请求或者get请求发出后使用。该请求接收一个参数[ log_level=INFO ],在没有传入日志级别参数时,默认使用info级别来打印日志。

    Log Response Status

    打印出http请求执行后的 Response Status状态码,该关键字一般在post请求或者get请求发出后使用。该请求接收一个参数[ log_level=INFO ],在没有传入日志级别参数时,默认使用info级别来打印日志。

    Response Body Should Contain

    这是一个断言关键字,用来判断http请求响应后的Response Body 中应该需要包含的内容,该关键字接收一个参数[ should_contain(包含的内容) ],示例:

    GET

    /foo.xml

    Response Body Should Contain

    version="1.0"

    Response Body Should Contain

    encoding="UTF-8"

    Response Header Should Equal

    这是一个断言关键字,用来判断http请求响应后的Response Header是否和预期一致,该关键字接收两个参数[ header_name | expected ],示例:

    Response Header Should Equal

    Content-Type

    text/html; charset=utf-8

    Response Header Should Not Equal

    这是一个断言关键字,用法和Response Header Should Equal刚好相反,用来判断http请求响应后的Response Header是否和预期不一致,在不一致时,执行成功,否在执行失败,该关键字接收两个参数[ header_name | not_expected ],示例:

    Response Header Should Equal

    Content-Type

    text/html; charset=utf-8

    Response Should Have Header

    这是一个断言关键字,用来判断http请求响应后的Response Header中是否包含预期的header名称,该关键字接收一个参数[ header_name ],示例:

    Response Should Have Header

    Content-Type

    Response Should Not Have Header

    这是一个断言关键字,用来判断http请求响应后的Response Header中是否不包含预期的header名称,该关键字接收一个参数[ header_name ],示例:

    Response Should Not Have Header

    Content-Type

    Response Status Code Should Equal

    这是一个断言关键字,用来判断http请求响应后的Response status code是否和预期一致,该关键字接收一个参数[ status_code ],示例:

    Response Status Code Should Equal

    200

    Response Status Code Should Not Equal

    这是一个断言关键字,用来判断http请求响应后的Response status code是否和预期不一致,在不一致时,执行成功,否在执行失败,该关键字接收一个参数[ status_code ],示例:

    Response Status Code Should Not Equal

    200

    Set Http Host

    该关键字用来设置http请求时的host名称,现在一般该关键字已经很少用了,推荐使用Create HTTP Context关键字来替代该关键字。

    Set Basic Auth

    该关键字用来设置http请求时的Basic Auth(Basic Auth简单点说明就是每次请求API时都提供用户的username和password。),该关键字接收两个参数[ username | password ]

    Set Json Value

    该关键字用来设置json字符串中某个节点的值,示例:

    ${json}

    Set Json Value

    {"foo": {"bar": [1,2,3]}}

    /foo

    12

    Should Be Equal

    ${json}

    {"foo": 12}

    Log Json

    该关键字用来打印json字符串的内容,示例:

    Should Be Equal

    {"foo": {"bar": [1,2,3]}}

    INFO

    Stringify Json

    该关键字用来将数据转换为json形式的字符串,示例:

    ${data}

    Create List

    a b c

    ${json_string}

    Stringify JSON

    ${data}

    log

    ${json_string}

    Show Response Body In Browser

    使用默认的浏览器来显示最后一次http请求的response body

    Should Be Valid Json

    该关键字是一个断言关键字,用来判断某个字符串是不是一个有效的json字符串,示例:

    Should Be Valid Json

    ["a b c"]

    Parse Json

    该关键字用来解析一个json字符串,示例:

    ${json}

    Parse Json

    {"foo": {"bar": [1,2,3]}}

    log

    ${json}

    Next Request Should Succeed

    该关键字用来判断,在存在多次请求时,下一次请求应该需要执行成功,使用该关键字时,一般需要存在至少两次请求,http请求中,很多请求都有一个特性,那就是幂等,比如get 请求,head请求等,都是幂等的请求,即执行一次和执行多次,都应该是成功的,返回的结果应该都是一致的。在执行第二次http请求时,返回的http code>=400时,会认为第二次请求执行失败了,示例:

    GET

    /user/signin/aa.htm

    Next Request Should Succeed

    GET

    /user/signin/aa.htm

    Next Request Should Not Succeed

    该关键字用来判断,在存在多次请求时,下一次请求不应该执行成功,使用该关键字时,一般需要存在至少两次请求,http请求中,也有很多请求是非幂等的,比如常用的post请求,就是一个典型的非幂等请求,即执行一次和执行多次,执行的结果不一定都是一致的。在执行第二次http请求时,返回的http code<400时,会认为第二次请求执行成功了,示例:

    POST

    /user/signin

    Next Request Should Not Succeed

    POST

    /user/signin

    Next Request Should Have Status Code

    该关键字用来判断,在存在多次请求时,下一次http请求返回的code值是否和预期一致,示例:

    POST

    /user/signin

    Next Request Should Have Status Code

    302

    POST

    /user/signin

    Next Request May Not Succeed

    该关键字和Next Request Should Succeed关键字很类似,使用该关键字时,一般需要存在至少两次请求,在下一次请求返回的http code>=400时,会认为下一次请求是执行失败了。示例:

    POST

    /user/signin

    Next Request May Not Succeed

    POST

    /user/signin

    每天努力一点,每天学习一点。 Keep Moving...
  • 相关阅读:
    将博客搬至CSDN
    规范化设计的范式的个人理解
    Codeforces Round #422 (Div. 2) D题要补的知识点
    Codeforces第一次rated比赛
    Codeforces 818B Permutation Game
    USACO Dynamic Programming (1)
    关于数据库中除法的一个小问题
    USACO hamming
    USACO Healthy Holsteins
    USACO Sorting a Three-Valued Sequence
  • 原文地址:https://www.cnblogs.com/channy14/p/11410713.html
Copyright © 2020-2023  润新知