使用pytest构建测试:快速入门与安装

需积分: 50 21 下载量 22 浏览量 更新于2024-07-07 收藏 1.24MB PDF 举报
"pytest中文文档.pdf" pytest是一个流行的Python测试框架,它简化了编写和执行测试的过程,提供了良好的可读性和强大的扩展性。由于pytest避免了大量的模板代码,使得测试用例更加简洁,便于理解和维护。 1. 安装pytest 要安装pytest,你只需要在你的Python环境中运行以下命令: ``` pip install -U pytest ``` 之后,你可以通过运行`pytest --version`来检查pytest是否已成功安装,并查看其版本信息。 2. 创建你的第一个测试 创建一个简单的测试用例只需四行代码。首先定义一个函数`func(x)`,返回`x + 1`,然后定义一个测试函数`test_answer()`,在这个函数中使用`assert`语句来验证`func(3)`的返回值是否等于5: ```python # test_sample.py def func(x): return x + 1 def test_answer(): assert func(3) == 5 ``` 在保存了上述代码的`test_sample.py`文件同级目录下,直接运行`pytest`命令,pytest会自动发现并执行这个测试: ``` $ pytest ``` 3. 运行测试 当你执行pytest时,它会显示测试的进度和结果。在上述例子中,由于`func(3)`返回4,而不是5,所以测试失败了,pytest将显示出详细的失败信息: ``` ============================= test session starts ============================== platform darwin -- Python 3.7.2, pytest-4.2.1, py-1.7.0, pluggy-0.8.1 rootdir: $REGENDOC_TMPDIR, inifile: collected 1 item test_sample.py F [100%] =================================== FAILURES =================================== _________________________________ test_answer ___________________________________ def test_answer(): > assert func(3) == 5 E assert 4 == 5 E + where 4 = func(3) test_sample.py:4: AssertionError ``` 这表明在`test_answer`函数的`assert`语句处发生了错误,提示实际结果4不等于期望的5。 pytest提供了一种直观的方式来组织和运行测试,对于开发者来说,这极大地提高了测试效率和代码质量。除了基础的断言和测试用例,pytest还支持参数化测试、 fixtures(用于设置和清理测试环境)、插件扩展等高级功能,使得复杂测试场景的处理变得简单。