Config.PARAM = "1"
のようにstaticな変数にパラメータを保持しているような場合、これを変更するテストコードがあると、そのテストコード以降に実行される別のテストコードがコケることがある。
他のテストに影響を与えないようにしたいので、fixtureを使ってテスト開始時にデフォルトの値に戻すようにした。
例えば、conftest.pyに以下のようにGlobal変数を初期化するglobal fixtureを定義する。
@pytest.fixture(scope="function", autouse=True) def global_vars_setup(): GlobalVars.init()
これでもテストを並列実行すると失敗することあるよなぁ。。もっと良い方法ないかな。
参考: