📅  最后修改于: 2023-12-03 14:45:52.925000             🧑  作者: Mango
Pytest是Python中流行的单元测试框架之一,它通过自动化测试和简单的语法使得测试变得更加容易。Pytest和其他测试框架相比,它的缺陷更少,易于阅读和编写测试。
在Python环境下,通过pip可以安装最新版本的pytest:
pip install pytest
以下是一个简单的示例代码:
# test_sample.py
def func(x):
return x + 1
def test_answer():
assert func(3) == 4
我们可以通过下列命令轻松地执行该测试:
pytest
输出结果如下:
============================= test session starts ==============================
platform linux -- Python 3.8.5, pytest-6.1.1, py-1.9.0, pluggy-0.13.1
rootdir: /home/user/project
collected 1 item
test_sample.py . [100%]
============================== 1 passed in 0.01s ===============================
此时可以看到,测试顺利通过,也就是说我们的func函数确实符合预期。
pytest使用assert
关键字和预期结果进行比较,如果比较结果是真值,则测试通过:
def test_answer():
assert func(3) == 4
为了更好地定制测试,我们可以使用配置文件。
pytest.ini
内容如下:
[pytest]
addopts = -rsxX -l
log_cli = 1
log_cli_level = INFO
其中,addopts为pytest命令行选项,log_cli为控制台日志的开关,在这个配置文件中,我们定义了当测试错误,并且跑完所有测试之后,显示本次测试中的各类统计情况。
Pytest易于学习,而且对应用的持续集成和自动化测试非常有帮助。如果你正在写Python代码并且需要简单且易于维护的测试框架,那么Pytest就是最好的选择之一。