Python 写一个pytest测试框架
时间: 2024-02-16 07:37:23 浏览: 21
由于 Python 已经有了一个非常流行的测试框架 pytest,所以我们不需要重新写一个。
但是,我们可以举一个简单的例子来说明如何编写 pytest 测试用例。
假设我们要测试一个加法函数 add(),并且我们期望 add(2, 3) 返回 5。
我们可以创建一个名为 test_add 的测试用例,如下所示:
```python
def test_add():
assert add(2, 3) == 5
```
这个测试用例使用了 assert 语句来判断 add(2, 3) 是否等于 5。如果不等于,就会抛出 AssertionError 异常,表示测试失败。
我们还需要在测试文件中导入 add() 函数,如下所示:
```python
from my_module import add
def test_add():
assert add(2, 3) == 5
```
最后,我们可以在命令行中运行 pytest 命令来运行我们的测试用例:
```
$ pytest
```
pytest 会自动查找以 test_ 开头的函数,并运行它们。如果所有测试用例都通过了,pytest 将输出一条类似于以下内容的消息:
```
============================== test session starts ==============================
platform linux -- Python 3.9.0, pytest-6.2.4, py-1.10.0, pluggy-0.13.1
rootdir: /home/user/my_project
collected 1 item
test_my_module.py . [100%]
=============================== 1 passed in 0.01s ===============================
```
如果有测试用例失败,pytest 将输出详细的错误信息,以帮助我们调试和修复错误。
这只是一个简单的例子,pytest 还有很多高级功能,例如参数化测试、测试夹具、自定义插件等等。如果您想深入了解 pytest,请查看 pytest 官方文档。