以下の内容はhttps://anton0825.hatenablog.com/entry/2018/02/23/000000より取得しました。


Pythonのテストコードでglobalな状態を変更しても他のテストの実行結果に影響を与えないようにしたい

Config.PARAM = "1"

のようにstaticな変数にパラメータを保持しているような場合、これを変更するテストコードがあると、そのテストコード以降に実行される別のテストコードがコケることがある。

他のテストに影響を与えないようにしたいので、fixtureを使ってテスト開始時にデフォルトの値に戻すようにした。

例えば、conftest.pyに以下のようにGlobal変数を初期化するglobal fixtureを定義する。

@pytest.fixture(scope="function", autouse=True)
def global_vars_setup():
    GlobalVars.init()

これでもテストを並列実行すると失敗することあるよなぁ。。もっと良い方法ないかな。

参考:

qiita.com




以上の内容はhttps://anton0825.hatenablog.com/entry/2018/02/23/000000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14