クラスusefulClass
を提供するpackageA
と、test_stuff.py
モジュールにpytestフィクスチャを、conftest.py
モジュールにテスト構成を持つとします。pytest fixturesとconfest.pyモジュールをパッケージ間で共有できますか?
また、Iはpip
介してインストール、packageA
をインポート両方ともpackageB
とpackageC
があると、それらは同様にusefulClass
を使用すること。同じ方法でusefulClass
を使用しているため、packageB
とpackageC
には多くの同じpytestフィクスチャと構成が必要です。実際、それらのテストは主に反復される入力セットでのみ異なります。
器具及び構成が同一であり、usefulClass
の使用から生じるので、packageA
でこれらの器具および構成を定義し、次にpackageB
とpackageC
のテスト環境にインポートすることができますか?
特に、packageA
のconftest.py
モジュールに表示されるpytest_generate_tests
の定義を何十ものモジュールに再利用したいと思います。この方法では、私は数百ではなく1つのconfest.py
モジュールを維持する必要があります。
私はこれが唯一の選択肢かもしれないと思っていました。したがって、 'pytest_generate_tests'のような特別な名前の設定関数を' packageA.testutils'から 'packageB'の' conftest.py'にインポートすると、pytestはそれを正しく発見して適用しますか? –
はい、そうすべきです。 –
はい、私は自分のパッケージの1つで試しました。依存パッケージの 'conftest.py'にインポートされた' pytest_generate_tests'は正しく発見され、実行されます。だから、他の特別な名前の関数についても同じことが当てはまります。ヴィーレンダンク〜MM –