ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

5 分钟上手 Python 测试:pytest 新手完整指南

5 分钟上手 Python 测试:pytest 新手完整指南 5 分钟上手 Python 测试pytest 新手完整指南【免费下载链接】pytestThe pytest framework makes it easy to write small tests, yet scales to support complex functional testing项目地址: https://gitcode.com/GitHub_Trending/py/pytestpytest 是一个 Python 测试框架用一行 assert 就能写出测试。如果你会写点 Python、想给项目加上自动化测试却不知道从哪入手这篇文章就是为你准备的。一句话定位pytest 是什么pytest 是 Python 生态里的测试框架目标是让你快速写出小测试同时能支撑大项目里复杂的函数测试。三个值得记住的点普通函数以test_开头就是测试不用继承任何测试类直接用 Python 原生的assert不需要学新语法官方支持 Python 3.8 和 PyPy3顺带一提pytest 诞生于德国弗莱堡上图就是那座城市的旧照片。五分钟跑起来一行命令装好它机器上有 pip 的话执行pip install pytest就这一行安装完成。三分钟写下第一个示例并运行第一步新建一个文件test_sample.py内容如下def inc(x): return x 1 def test_answer(): assert inc(3) 4第二步在终端里运行pytest。第三步看输出。你会看到1 passed如果失败pytest 会告诉你哪一行、什么值不对。跑通了你就懂了。真实项目里pytest 能做什么举个小例子。你写了个计算器想确认加法和减法都没问题# calculator.py def add(a, b): return a b def subtract(a, b): return a - b在旁边建个test_calculator.pyfrom calculator import add, subtract def test_add(): assert add(2, 3) 5 def test_subtract(): assert subtract(5, 3) 2运行pytest两条都过。以后谁改坏了add的逻辑测试立刻失败bug 在上线前就被拦下。老手提醒用 fixtures 管公共资源—— fixtures测试夹具帮测试准备和清理数据库连接、临时文件这类公共资源参数化消灭重复代码—— 一个测试函数带多组参数跑多遍不用写十份几乎一样的函数用 markers 筛选测试—— markers测试标记给测试打标签想跑哪部分就挑哪部分生态与扩展pytest 的插件生态很成熟最常碰到的有四个。pytest-cov做代码覆盖率告诉你多少代码真的被测试覆盖过心里有没有底它说了算。pytest-django服务 Django 项目自动搞定数据库准备这类繁琐步骤你只管写测试。pytest-xdist并行跑测试把用例拆到多个进程里执行大测试套提速明显。pytest-mock提供 mock替身能力把不想真实调用的依赖临时换掉单元测试写起来更从容。下一步想深入时看两处官方文档在doc/en/how-to/下每个话题一章核心实现在src/_pytest/理解 fixtures 机制可以从src/_pytest/fixtures.py读起。延伸建议先玩转参数化再加覆盖率统计测试工作流就闭环了。【免费下载链接】pytestThe pytest framework makes it easy to write small tests, yet scales to support complex functional testing项目地址: https://gitcode.com/GitHub_Trending/py/pytest创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表