-x
オプションを使用する方法: pytestを実行する際に、-x
オプションを指定すると、最初のテストの失敗時に実行が停止し、コンソールに入ることができます。コンソールに入ると、スタックトレースを調査したり、変数の値を確認したりすることができます。以下は、コマンドラインでの使用例です。
pytest -x
--pdb
オプションを使用する方法: pytestを実行する際に、--pdb
オプションを指定すると、テストの失敗時にPythonのデバッガ(pdb)が起動し、コンソールに入ることができます。デバッガを使用すると、ステップ実行や変数の値の確認など、より詳細なデバッグ操作を行うことができます。以下は、コマンドラインでの使用例です。
pytest --pdb
pytest.set_trace()
を使用する方法: テストコード内で、問題が発生する可能性のある場所にpytest.set_trace()
を挿入することで、テストの失敗時にコンソールに入ることができます。これは、特定の箇所でのみデバッグを行いたい場合に便利です。以下は、テストコードの例です。
def test_example():
x = 10
y = 0
assert x / y == 5
pytest.set_trace() # テストの失敗時にコンソールに入る
assert x + y == 10
これらの方法を使用することで、pytestのテストの失敗時にコンソールに入り、問題の原因を特定し、デバッグすることができます。