news 2026/10/10 10:34:02

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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语句对应。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/9 11:16:15

3步完成数据库升级:从SQLite到MySQL的智能迁移方案

3步完成数据库升级&#xff1a;从SQLite到MySQL的智能迁移方案 【免费下载链接】sqlite-to-mysql Script to convert and add sqlite3 database into a mysql/mariadb database 项目地址: https://gitcode.com/gh_mirrors/sq/sqlite-to-mysql 在项目从原型走向生产环境的…

作者头像 李华
网站建设 2026/10/9 10:29:55

基于Spring Boot+Vue的电子政务服务管理系统

目录 项目介绍 演示视频 系统展示 代码实现 推荐项目 项目开发总结 为什么选择我 源码获取 博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领…

作者头像 李华
网站建设 2026/10/9 21:19:39

HunyuanVideo-Foley + Git 工作流整合:实现自动化音效生成CI/CD

HunyuanVideo-Foley Git 工作流整合&#xff1a;实现自动化音效生成CI/CD 在短视频日均产量突破千万条的今天&#xff0c;一个现实问题正不断拷问着内容制作团队&#xff1a;如何在不增加人力的前提下&#xff0c;为每一段视频配上精准、生动、风格统一的音效&#xff1f;传统…

作者头像 李华
网站建设 2026/10/9 14:35:09

Java开发场景下AI代码生成技术实测报告:效率与安全性双重验证

引言&#xff1a;代码生成技术的工业化应用探索 在Java企业级开发领域&#xff0c;AI代码生成技术的实际应用价值始终存在争议。支持方认为该技术可显著提升开发效率、降低编码错误率&#xff1b;反对方则聚焦于其生成代码在可读性与可维护性方面的潜在缺陷。为客观验证AI代码…

作者头像 李华
网站建设 2026/10/9 23:26:45

力扣刷题知识点总结

一、数组&#xff1a;双指针是 “万能钥匙”数组题占了近一半&#xff0c;而双指针是解决这类题的 “最优解密码”。1. 左右指针&#xff1a;解决 “区间类” 问题11. 盛最多水的容器考点&#xff1a;双指针 贪心思路&#xff1a;用左右指针指向数组两端&#xff0c;计算当前容…

作者头像 李华
网站建设 2026/10/9 18:54:28

寻找两个正序数组的中位数:思路与实现

一、问题核心知识点 解决该问题需掌握以下关键知识点&#xff1a; 1. 有序数组合并&#xff1a;利用双指针法合并两个有序数组&#xff0c;是处理有序数组的基础操作&#xff0c;时间复杂度O(mn)。 2. 中位数的计算规则&#xff1a; 若合并后数组长度为奇数&#xff0c;中位数是…

作者头像 李华