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

pytest测试专题 - 1.3 测试用例发现规则

<< 返回目录

1 pytest测试专题 - 1.3 测试用例发现规则

  执行pytest命令时,可以不输入参数,或者只输入文件名或者目录名,pytest会自己扫描测试用例。那pytest基于什么规则找到用例呢?

文件名:满足文件名称为test_<something>.py<something>_test.py
函数:满足函数名为test_<something>
:满足类名为Test<Something>

测试用例的组织可以是

  • 文件 -> 函数(测试用例)
  • 文件 -> 类 -> 函数(测试用例)

选择哪种组织方式,需要看用户的业务情况,如果测试用例很集中,且有公共的预置条件,可以尝试使用类封装的方式。

  1. 异常情况1:如果类名不满足规范,但成员函数满足规范,是否可以发现用例?
      不可以!

文件:test_ch1_003.py

class TesClass():
    def test_class_001(self):
        assert 1 == 1

执行结果:

============================= test session starts =============================
platform win32 -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0 -- C:\Program Files\Python313\python.exe
cachedir: .pytest_cache
metadata: {'Python': '3.13.1', 'Platform': 'Windows-10-10.0.19045-SP0', 'Packages': {'pytest': '8.3.4', 'pluggy': '1.5.0'}, 'Plugins': {'check': '2.4.1', 'html': '4.1.1', 'metadata': '3.1.1', 'timeout': '2.3.1', 'xdist': '3.6.1'}}
rootdir: D:\TYYSOFT\Study\Python\pytest
configfile: pytest.ini
plugins: check-2.4.1, html-4.1.1, metadata-3.1.1, timeout-2.3.1, xdist-3.6.1
collecting ... collected 0 items

- Generated html report: file:///D:/TYYSOFT/Study/Python/pytest/tasks/report.html -
============================ no tests ran in 0.02s ============================
  1. 异常情况2:类名满足规范,但成员函数不满足规范,是否可以发现用例?
      不可以!最终执行测试用例的本质是函数,函数名不满足规范无法执行。

对命名规范的总结:

开始
检查文件名是否符合规范
检查类名是否符合规范
文件名不符合规范
检查函数名是否符合规范
类名不符合规范
命名规范检查全部通过
函数名不符合规范
结束

作者声明:本文用于记录和分享作者的学习心得,可能有部分文字或示例来源自豆包AI,由于本人水平有限,难免存在表达错误,欢迎留言交流和指教!
Copyright © 2022~2025 All rights reserved.

<< 返回目录


http://www.kler.cn/a/550268.html

相关文章:

  • 尚硅谷爬虫note008
  • Pyspark实例_读取json文件存入到hive表内
  • 麒麟v10 nginx脚本安装
  • DeepSeek R1本地部署 DeepSeek Api接口调用 DeepSeek RAG知识库工作流详解
  • 人工智能3d点云之Pointnet++项目实战源码解读(点云分类与分割)
  • OpenGL ES - 数学基础
  • 什么是网络安全威胁?常见威胁有哪些?
  • 从低清到4K的魔法:FlashVideo突破高分辨率视频生成计算瓶颈(港大港中文字节)
  • Java并发编程5--Java内存模型的基础
  • 同步异步日志系统-项目介绍
  • 【MySQL】第六弹---数据库表约束详解:从空属性到主键的全方位指南
  • Vue 前端开发中的路由知识:从入门到精通
  • DeepSeek 的创新融合:多行业应用实践探索
  • Android 中使用 FFmpeg 进行音视频处理
  • 网工项目理论1.7 设备选型
  • node.js + html调用ChatGPTApi实现Ai网站demo(带源码)
  • PosgreSQL比MySQL更优秀吗?
  • 容联云联络中心AICC:深度整合DeepSeek,业务验证结果公开
  • MDX语言的安全开发
  • 安全筑基,智能赋能:BeeWorks IM引领企业协同新纪元