無数に存在するpytestのオプションについて、今日は最低限知っておきたい便利なものを4つを紹介します。
実際に自分も色々試してみたのですが、結局よく使ってるのはこの4つぐらいなので、恐らくこれだけ知っておけば大体何とかなることでしょう…。
オプションの使い方について
以下で紹介するオプションを利用する場合は、$pytest
を実行する際に、オプション引数を付与します。例えば、1つ目の例だと$pytest -v
または$pytest --verbose
というように実行します。
-v/--verbose
テスト結果について、デフォルトよりも詳しい情報を出力。
-s/--capture=method
テスト実行中にprint文の出力を標準出力に書き出す。
--lf/--last-failed
前回のテストで失敗したテストのみ再び実行。何度もテスト行う際に便利です。
-m MARKEXPR
ソースコード中でマーカーをつけた任意のテスト関数を実行。
例:
import pytest ... @pytest.mark.hoge def test_piyo(): ... @pytest.mark.huga def test_foo(): ...
実行方法:
$ pytest -m hoge
ちなみに、複数のマーカーの組み合わせも可能です。
$ pytest -m hoge -m huga
オプションの詳しい内容や、他のオプションについては公式ドキュメント*1をご参照ください。
私のように英語ドキュメントはしんどいという方はテスト駆動Pythonもお勧めです。(ここで紹介した他にも色々なオプションが紹介されています。pytestのチュートリアルのようになっていて、とても分かりやすいです。)
pytestを使ってPythonでテスト駆動開発するための全知識。本書の目的 ・Pythonを使っているのでpytestを使ったテスト駆動開発する ・シンプルなテストをシンプルに書く ・複雑なテストもシンプルに書く ・読みやすいテストを書く
コメント