py.testセッション内からコードが実行されるかどうかをテストする 質問する

py.testセッション内からコードが実行されるかどうかをテストする 質問する

コードが py.test で実行されている場合は、別のデータベースに接続したいと思います。py.test セッションで実行されているかどうかを判別できる、呼び出す関数またはテストできる環境変数はありますか? これを処理する最善の方法は何ですか?

ベストアンサー1

私が思いついたより簡単な解決策は次のとおりです。

import sys

if "pytest" in sys.modules:
    ...

Pytest ランナーは常にpytestモジュールをロードし、 で使用できるようにしますsys.modules

もちろん、このソリューションは、テストしようとしているコードがpytestそれ自体を使用していない場合にのみ機能します。

おすすめ記事