Why
实际使用中,根据业务场景划分不同的测试文件,可维护性会更强。如按照下面区分
item_test.py # 商品相关功能测试
order_test.py # 订单相关功能测试
payment_test.py # 付款相关功能测试
这样主要有两个好处
- 功能划分后一目了然,不会全部测试函数都混在一个文件中
- 可以分开执行
How
使用pytest执行多文件测试,需要遵循以下规则
- 测试文件命名为
test_*.py
或*_test.py
- 测试方法使用
test
前缀 - 测试类使用
Test
前缀,且不能有__init__
方法, 类内测试方法使用test
前缀
你可以将不同文件放在不同目录下,如
├─ item
│ |─ __init__.py
| └─ item_test.py
├─ order
│ |─ __init__.py
| └─ order_test.py
└─ logoin_test.py
自动搜索测试文件
pytest会遍历搜寻符合条件的测试模块和测试方法,并运行
遍历搜寻规则如下:
- 确定起始遍历目录
- 如果命令行中指定,则使用指定目录
- 如果有
pytest.ini
,tox.ini
,setup.cfg
,且配置testpaths