当前位置: 首页 > news >正文

HttpRunner-5-DebugTalk-httprunner-5

什么是 debugtalk

在前面的文章中我们已经介绍过 httprunner 的项目结构。debugtalk.py 是用来表示项目根目录的,同时我们也能在其中自定义一些方法供 apicase 使用。

debugtalk 用于 hook

详情查看:HttpRunner-03-hook

debugtalk 用于数据传递

前面的 HttpRunner-04-extract 中我们提到了 token 的传递和使用我们也可以通过 debugtalk 实现,这里我们就介绍一下具体的用法。

定义获取 token 的函数

debugtalk

def get_token():return 'xxxtokenxxx'

在 case 中引用 get_token

如下:在 step2 中的 variables 中以 token: ${get_token()}的方式进行函数的调用,同时将 token 赋值给变量 token

config:name: "demo testcase"variables:device_sn: "ABC"username: ${ENV(USERNAME)}password: ${ENV(PASSWORD)}base_url: "https://getman.cn/mock"# setup_hooks:#     - ${hook_print(setup)}# teardown_hooks:#     - ${hook_print(teardown)}teststeps:
-name: demo step 1api: api/demo_api.ymlvariables:user_agent: 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'device_sn: $device_sn# extract:#     - token: content.namevalidate:- eq: ["status_code", 200]setup_hooks:- ${hook_print(setup)}teardown_hooks:- ${hook_print(teardown)}
-name: demo step 2api: api/demo_api2.ymlvariables:token: ${get_token()}validate:- eq: [reason, OK]

在测试报告中的体现

step2headers


可以看到通过 debugtalk 中的 get_token 函数获取到的 token 已经成功的传到了 step2 调用的 apiheaders 中。

小结

debugtalk 为测试人员预留了自定义的入口,你应该已经感觉到 HttpRunner 是一个有自己个性且开放的测试框架。对于常用的那些功能和模块做了封装,让你再使用的时候只需要维护一份 json/yaml 就可以。但是对于那些特殊的场景和需求,你可以通过 debugtalk 进行自定义,这样既能满足框架完整性,又能兼顾对接其他系统,不得不说这个设计真的很聪明。

HttpRunner 是一个优秀的国人开发的软件,按道理我们应当充分支持,实际我也是支持的。但是作为测试开发人员,我可能还是会拿它和 RFPytest 等做对比。因为 HttpRunner 的测试执行是通过 unittest 进行调度的,而且其要维护 json/yaml,对部分测试开发同学来说可能不是最优雅的方式,而且每个接口都需要进行封装,当然我们可以使用数据驱动,但是我们个对于每个接口的特殊性我们还得分类再做数据驱动,工作量相对较大。而对于纯代码的 Pytest 则相对较少,因为可以快速封装。RFPytest 的基础上更加易于使用和维护。正式因为如此,所以 HttpRunner 的使用率并不广泛,但不影响它是一款优秀框架的身份。

最后,建议有开发能力和资金的团队可以根据自己业务需求开发专属的测试框架,对于小团队,我们选择一款合适自己的开源测试框架即可。别忘了回馈和支持社区哦。

http://www.gsyq.cn/news/35927.html

相关文章:

  • 制造业运营管理新突破:Tita 赋能下的精益生产与协同发展
  • Dify入门实战:5分钟搭建你的第一个AI测试用例生成器
  • .NET Core + Docker 部署:Serilog 日志配置与查看全攻略
  • 2025年10月国内环保工程设备厂家前5名推荐榜单
  • 2025 年加药装置厂家最新推荐榜,技术实力与市场口碑深度解析,精选高适配性优质品牌加药装置/江苏加药装置公司推荐
  • 2025年10月教育资源好的学习机品牌推荐:销量榜评测报告
  • 《星球大战:克隆人战争》中的片头格言
  • matlab byte 转 bit 函数编写
  • 深入解析:嵌入式硬件——基于IMX6ULL的GPT(通用定时器)实现
  • 2025年10月教育资源好的学习机品牌推荐:实力榜全面评测
  • 2025年10月适合初中生的学习机品牌推荐:口碑榜全维度对比指南
  • 2025小型防撞与桥梁护栏企业推荐榜:聚焦实用适配的优质之选,道路防撞与桥梁护栏,桥面防撞与桥梁护栏厂家
  • nginx和微服务中网关
  • 2025 年珠海装修公司最新推荐榜,聚焦企业技术实力、服务品质与市场口碑深度解析珠海豪宅/珠海品质/珠海口碑好的/珠海大宅/珠海设计工作室推荐
  • 使用 curl 发送 POST 请求
  • 2025 年云梯车厂家最新推荐榜,技术实力与市场口碑深度解析,助力企业精准采购高空云梯车,蓝牌云梯车,拖挂式云梯车厂家推荐
  • 2025年10月防脱生发产品评价榜:国货与进口实测数据横向对比
  • 动画演示编辑距离
  • 这是一篇随笔
  • 2025 年汽车升降机,移动式升降机,提升机,登车桥厂最新推荐排行榜:技术实力与市场口碑深度解析
  • 为什么别人用 DevPod 秒启 DeepSeek-OCR,你还在装环境?
  • 2025年济南小型画室培训机构推荐精选榜单,美术生择校参考,济南画室培训机构,画室机构厂家推荐
  • 性能优化:两条SQL索引优化,CPU占用率从40%降至25%
  • 2025 科技馆运维厂家企业推荐榜:专业力量守护科普阵地,博物馆运营,民防馆运营,展馆维保厂家推荐
  • 2025实用主板板卡厂家推荐榜:聚焦中小规模优质供应商,工控主板板卡,核心板主板板卡厂家推荐
  • 2025年武汉小型车出租厂家服务商推荐榜单,实用出行参考,防撞车出租,高空车出租,登高车出租厂家推荐
  • leetcode274. H 指数
  • 2025年BAB筑垒建设公司权威深度解析:北京写字楼装修业测评与未来趋势揭秘
  • 2025 年最新推荐:货梯源头厂家排行榜 防爆 / 升降 / 仓库 / 载货电梯靠谱品牌精选
  • 边缘智能的创新:MLGO微算法科技推出基于QoS感知的边缘大模型自适应拆分推理编排技术