HttpRunner内置断言与函数详解

HttpRunner内置断言与函数详解

httprunner HttpRunner 是一个开源的 API/UI 测试工具,简单易用,功能强大,具有丰富的插件化机制和高度的可扩展能力。 httprunner 项目地址: https://gitcode.com/gh_mirrors/ht/httprunner

前言

HttpRunner作为一款优秀的接口测试框架,提供了丰富的内置断言和函数功能,帮助测试工程师高效完成接口测试验证工作。本文将深入解析HttpRunner中的内置断言机制和常用函数,帮助读者全面掌握这些核心功能。

内置断言机制

断言基本结构

HttpRunner的断言验证遵循特定的JSON格式,包含四个关键字段:

{
    "check": "status_code",  // 要检查的目标字段,通常与jmespath配合使用
    "assert": "equals",     // 断言方法,可使用内置方法或自定义函数
    "expect": 200,          // 期望值
    "msg": "检查响应状态码"   // 可选,断言失败时显示的消息
}

断言方法详解

HttpRunner提供了丰富的断言方法,覆盖了各种测试场景的需求。下面分类介绍这些断言方法:

数值比较类
  1. 相等判断

    • eq/equals/equal: 判断实际值等于期望值
    • 示例:9 eq 9 返回true
  2. 大小比较

    • lt/less_than: 判断实际值小于期望值
    • le/less_or_equals: 判断实际值小于等于期望值
    • gt/greater_than: 判断实际值大于期望值
    • ge/greater_or_equals: 判断实际值大于等于期望值
    • ne/not_equal: 判断实际值不等于期望值
字符串处理类
  1. 字符串比较

    • str_eq/string_equals: 将值转为字符串后比较
    • 示例:123 str_eq '123' 返回true
  2. 字符串匹配

    • startswith: 判断字符串以指定内容开头
    • endswith: 判断字符串以指定内容结尾
    • regex_match: 使用正则表达式匹配字符串
长度判断类
  1. 精确长度

    • len_eq/length_equals/length_equal: 判断长度等于期望值
    • 示例:'abc' len_eq 3 返回true
  2. 长度范围

    • len_gt/count_gt/length_greater_than: 判断长度大于期望值
    • len_ge/count_ge/length_greater_or_equals: 判断长度大于等于期望值
    • len_lt/count_lt/length_less_than: 判断长度小于期望值
    • len_le/count_le/length_less_or_equals: 判断长度小于等于期望值
集合判断类
  1. 包含关系
    • contains: 判断集合包含指定元素
    • contained_by: 判断元素包含于指定集合
    • 示例:'a' contained_by 'abc' 返回true
类型判断类
  1. 类型匹配
    • type_match: 判断两个值的类型相同
    • 示例:123 type_match 1 返回true

内置函数详解

HttpRunner还提供了一系列实用函数,方便在测试过程中使用:

  1. 时间相关函数

    • get_timestamp(): 获取当前时间的13位时间戳
    • sleep(n): 暂停执行n秒,模拟思考时间
  2. 随机处理函数

    • gen_random_string(n): 生成n位随机字符串
  3. 数值处理函数

    • max(m, n): 返回两个数字中的较大值
  4. 加密函数

    • md5(s): 计算字符串s的MD5值

最佳实践建议

  1. 断言选择:根据测试需求选择合适的断言方法,数值比较优先使用eq而非str_eq

  2. 错误信息:为重要断言添加msg字段,便于定位问题

  3. 性能考虑:合理使用sleep函数,避免不必要的等待时间

  4. 随机数据:使用gen_random_string生成测试数据时,注意长度和字符集是否符合业务要求

总结

HttpRunner内置的断言和函数为接口测试提供了强大的支持,掌握这些功能可以显著提升测试效率和准确性。建议读者在实际项目中多加练习,灵活运用这些功能来满足各种测试场景的需求。

httprunner HttpRunner 是一个开源的 API/UI 测试工具,简单易用,功能强大,具有丰富的插件化机制和高度的可扩展能力。 httprunner 项目地址: https://gitcode.com/gh_mirrors/ht/httprunner

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宗嫣惠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值