Pytest-substring-matching-of-test-names

提供:Dev Guides
移動先:案内検索

テスト名の部分文字列一致

名前に文字列を含むテストを実行するには、次の構文を使用できます-

pytest -k <substring> -v

-k <substring>は、テスト名で検索するサブストリングを表します。

今、次のコマンドを実行します-

pytest -k great -v

これにより、名前に「」という単語が含まれるすべてのテスト名が実行されます。 この場合、それらは 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」で始まる必要があります。