zoukankan      html  css  js  c++  java
  • httprunner 3.x学习18

    前言

    httprunner 3.x使用 validate 方法断言

    comparator 校验方式

    validate 可以支持的校验方式

    comparator 缩写 功能
    equal "eq", "equals", "equal" 相等
    less_than "lt", "less_than" 小于
    less_or_equals "le", "less_or_equals" 小于或等于
    greater_than "gt", "greater_than" 大于
    greater_or_equals "ge", "greater_or_equals" 大于或等于
    not_equal "ne", "not_equal" 不等于
    string_equals "str_eq", "string_equals" 转字符串相等
    length_equal "len_eq", "length_equal" 长度相等
    length_greater_than "len_gt","length_greater_than" 长度大于
    length_greater_or_equals "len_ge","length_greater_or_equals" 长度大于或等于
    length_less_than "len_lt", "length_less_than" 长度小于
    length_less_or_equals ""len_le", "length_less_or_equals" 长度小于或等于
    contains check_value 包含 expect_value
    contained_by expect_value 包含check_value
    type_match type类型匹配
    regex_match 正则匹配re.match(expect_value, check_value)
    startswith 字符串以xx开头
    endswith 字符串以xx结尾

    yaml 中可以写2种格式校验

    httprunner 校验返回结果有2种格式

    • {"comparator_name": [check_value, expect_value]}
    • {"check": check_value, "comparator": comparator_name, "expect": expect_value}

    我们平常用的比较多是是上面这种,直接拿到返回结果,校验与期望结果是否一致

    # 作者-上海悠悠 QQ交流群:717225969
    # blog地址 https://www.cnblogs.com/yoyoketang/
    
    validate:
            - eq: [status_code, 200]
            - less_than: [status_code, 400]
            - equals: [body.code, 0]
            - equals: [body.msg, success!]
            - length_equals: [body.datas, 2]
            - greater_than_or_equals: [body.datas.0.age, 18]
    

    pytest脚本中的断言

    先调用.validate()后,可以看到全部assert方法,在StepRequestValidation 类中定义

    方法 对应校验方法 功能
    assert_equal equal 相等
    assert_not_equal not_equal 不等于
    assert_less_than less_than 小于
    assert_less_or_equals less_or_equals 小于或等于
    assert_greater_than greater_than 大于
    assert_greater_or_equals greater_or_equals 大于或等于
    assert_assert_string_equals string_equals 转字符串相等
    assert_length_equal length_equal 长度相等
    assert_length_greater_than length_greater_than 长度大于
    assert_length_greater_or_equals length_greater_or_equals 长度大于或等于
    assert_length_less_than length_less_than 长度小于
    assert_length_less_or_equals length_less_or_equals 长度小于或等于
    assert_contains contains check_value 包含 expect_value
    assert_contained_by contained_by expect_value 包含check_value
    assert_type_match type_match type类型匹配
    assert_regex_match regex_match 正则匹配re.match(expect_value, check_value)
    assert_startswith startswith 字符串以xx开头
    assert_endswith endswith 字符串以xx结尾

    使用方式先调用 .validate() 方法,才能调用 assert 断言方法

  • 相关阅读:
    【BZOJ5306】染色(HAOI2018)-容斥原理+NTT
    【BZOJ3129】方程(SDOI2013)-容斥原理+扩展Lucas定理
    【BZOJ3876】支线剧情(AHOI&JSOI2014)-有上下界费用流
    【POJ1149】PIGS-最大流+优化建模
    【BZOJ1941】Hide and Seek(SDOI2010)-KD树
    【BZOJ1834】网络扩容(ZJOI2010)-最大流+费用流+拆边
    【BZOJ1927】星际竞速(SCOI2010)-费用流+拆点
    【BZOJ4872】分手是祝愿(六省联考2017)-期望DP
    【BZOJ2879】美食节(NOI2012)-费用流+拆点+动态加边
    JQ简单图片轮播
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/14928878.html
Copyright © 2011-2022 走看看