Pytest-基本的なテストから始める
それでは、最初のpytestプログラムから始めましょう。最初にディレクトリを作成し、それによってディレクトリにテストファイルを作成します。
以下に示す手順に従ってみましょう-
名前の付いた新しいディレクトリを作成します automation コマンドラインでディレクトリに移動します。
名前の付いたファイルを作成します test_square.py そのファイルに以下のコードを追加します。
import math
def test_sqrt():
num = 25
assert math.sqrt(num) == 5
def testsquare():
num = 7
assert 7*7 == 40
def tesequality():
assert 10 == 11
次のコマンドを使用してテストを実行します-
pytest
上記のコマンドは、次の出力を生成します-
test_square.py .F
============================================== FAILURES
==============================================
______________________________________________ testsquare
_____________________________________________
def testsquare():
num=7
> assert 7*7 == 40
E assert (7 * 7) == 40
test_square.py:9: AssertionError
================================= 1 failed, 1 passed in 0.06 seconds
=================================
結果の最初の行を参照してください。ファイル名と結果が表示されます。Fはテストの失敗を表し、dot(。)はテストの成功を表します。
その下に、失敗したテストの詳細が表示されます。テストが失敗したステートメントが表示されます。この例では、7 * 7が40と等しいかどうかが比較されていますが、これは誤りです。最後に、テスト実行の概要を確認できます。1つは失敗し、1つは合格です。
関数tesequalityは、名前が形式ではないためpytestがテストと見なさないため、実行されません。 test*。
ここで、以下のコマンドを実行して、結果をもう一度確認します-
pytest -v
-vは冗長性を高めます。
test_square.py::test_sqrt PASSED
test_square.py::testsquare FAILED
============================================== FAILURES
==============================================
_____________________________________________ testsquare
_____________________________________________
def testsquare():
num = 7
> assert 7*7 == 40
E assert (7 * 7) == 40
test_square.py:9: AssertionError
================================= 1 failed, 1 passed in 0.04 seconds
=================================
これで、失敗したテストと合格したテストについて、結果がよりわかりやすくなりました。
Note − pytestコマンドは、フォーマットのすべてのファイルを実行します test_* または *_test 現在のディレクトリとサブディレクトリにあります。