pytestで繰り返し行う用意をfixtureに設定するメモ。
pytestでfixtureを使う時がある。 何を気をつけるかいつも忘れてる気がするのでメモする。
導入方法
こんな感じに書く。
import pytest @pytest.fixture def target_method(): from my_module import my_method return my_method def test_normal(target_method): parameter = [] result = my_method(parameter) assert result
説明
@pytest.fixture
をつけた関数は、fixtureとして扱われる。
testケースとなる関数を書き、その引数にfixtureとして扱っている関数と同じ名前の引数をセットすると、自動的にfixtureで指定された関数の実行結果が返ってくる。
よくみるのはモジュールのimportを一箇所にまとめてる。
あとは、共通して挿入したい何かがあったらfixtureでやってるような気がする。