Pytest 测试名称的子字符串匹配
要执行包含名称中某个字符串的测试,可以使用以下语法 –
pytest -k <substring> -v
-k <substring>
代表在测试名称中要搜索的子字符串。
现在,运行以下命令 –
pytest -k great -v
执行所有名称中包含单词 ‘great’ 的测试。在这种情况下,它们是 test_greater() 和 test_greater_equal() 。请查看以下结果。
test_compare.py::test_greater FAILED
test_compare.py::test_greater_equal PASSED
============================================== FAILURES
==============================================
____________________________________________ test_greater
____________________________________________
def test_greater():
num = 100
> assert num > 100
E assert 100 > 100
test_compare.py:3: AssertionError
========================== 1 failed, 1 passed, 3 deselected in 0.07 seconds
==========================
在这个结果中,我们可以看到有3个测试被取消选择。这是因为这些测试的名称中不包含单词 great 。
注意 −测试函数的名称仍应以“test”开头。
Pytest教程目录索引
- Pytest 教程
- Pytest 简介
- Pytest 环境搭建
- Pytest 标识测试文件和测试函数
- Pytest 着手编写基本测试
- Pytest 文件执行
- Pytest 执行一部分测试套件
- Pytest 测试名称的子字符串匹配
- Pytest 分组测试
- Pytest fixture
- Pytest Conftest.py
- Pytest 参数化测试
- Pytest 选择xfail测试或跳过测试
- Pytest 在N个测试失败后停止测试套件
- Pytest 并行运行测试
- Pytest 以XML格式执行测试的结果
- Pytest 总结