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

pytest中的测试用例名与`test_`开头的函数一一对应,不是与assert语句对应

1.基本对应关系

# test_example.pydeftest_addition():# 对应一个测试用例assert1+1==2deftest_subtraction():# 对应另一个测试用例assert3-1==2assert5-2==3# 同一个用例中的多个assert

在report.html中,你会看到:

  • test_addition(一个测试用例)
  • test_subtraction(一个测试用例)

2.参数化测试的特殊情况

importpytest@pytest.mark.parametrize("a,b,expected",[(1,1,2),(2,3,5),(5,5,10)])deftest_add(a,b,expected):# 一个函数对应多个测试用例asserta+b==expected

在报告中会显示为:

  • test_add[1-1-2]
  • test_add[2-3-5]
  • test_add[5-5-10]

3.assert的作用

  • assert是测试用例内部的验证点
  • 一个测试用例可以有多个assert语句
  • 如果第一个assert失败,后续的assert不会执行(除非使用pytest的特殊配置)
deftest_multiple_asserts():# 这3个assert都属于同一个测试用例assert1==1assert"hello"=="hello"assert[1,2]==[1,2]

4.report.html中的显示

<!-- 简化示例 --><table><tr><td>Test Case</td><td>Status</td></tr><tr><td>test_addition</td><!-- 函数名 --><td>PASSED</td></tr><tr><td>test_subtraction</td><!-- 函数名 --><td>FAILED</td><!-- 即使有多个assert,也是整体显示 --></tr></table>

5.总结要点

  • 一个test_函数 = 一个测试用例(除非参数化)
  • 多个assert = 一个测试用例内的多个检查点
  • 报告中显示的是函数名(或参数化后的变体)
  • assert失败会使整个测试用例标记为失败

6.验证方法

你可以通过以下命令查看:

# 运行测试并查看用例名pytest -v# 或生成html报告pytest --html=report.html

所以,pytest的报告结构与测试函数对应,而不是与assert语句对应

http://www.cnnetsun.cn/news/70847.html

相关文章:

  • 3步完成数据库升级:从SQLite到MySQL的智能迁移方案
  • 基于Spring Boot+Vue的电子政务服务管理系统
  • HunyuanVideo-Foley + Git 工作流整合:实现自动化音效生成CI/CD
  • Java开发场景下AI代码生成技术实测报告:效率与安全性双重验证
  • 力扣刷题知识点总结
  • 寻找两个正序数组的中位数:思路与实现
  • 商业广告音效定制避坑指南:3分钟搞懂版权费用与隐藏成本
  • 5个让玩家身临其境的游戏音效设计秘诀(附实战资源库)
  • 影视剪辑必看:5个关键技巧教你避开音效版权雷区
  • 游戏串流实战手册:从零搭建高效串流系统
  • 小米运动步数自动同步:2025年免费刷步数完整教程
  • 原神帧率解锁神器:突破60帧限制的终极解决方案
  • STL——set
  • [CTF]攻防世界:fakebook (sql注入)
  • Zepp Life自动刷步终极指南:3分钟搞定微信支付宝同步
  • FLUX.1-dev与Docker镜像优化:最小化容器体积提升加载速度
  • Applite:Mac软件管理终极指南,告别命令行烦恼
  • Ollama下载GPT-OSS-20B并实现本地化AI服务的完整教程
  • SkyWalking 与 Zipkin、Prometheus 深度对比分析
  • 全面升级!yudao-cloud v2.4.2重磅发布:AI大模型与工作流引擎双引擎驱动业务创新
  • gpt-oss-20b结合Dify部署实现可视化AI工作流
  • AI自动修复CHLSProxy SSL证书错误:开发者新利器
  • 77777
  • 大麦抢票终极指南:DamaiHelper全自动解决方案
  • 大学计算机
  • 一口气解释清楚转换流存在的原因
  • 从卧床不起到健步如飞 退休老阿姨用机器人治腰突的亲身体验!
  • Java毕设项目:基于springboot新能源汽车销售管理系统基于Java Web的新能源汽车信息咨询服务(源码+文档,讲解、调试运行,定制等)
  • Java毕设项目:基于springboot高校体育运动会比赛系统(源码+文档,讲解、调试运行,定制等)
  • uos server 1070e在线软件仓库源整理记录