1. ホーム
  2. python

[解決済み] テストケースで使用される "setUp" と "tearDown" Python メソッドについて説明します。

2022-10-06 19:56:13

質問

Pythonの setUptearDown メソッドでテストケースを作成しながら、それとは別に setUp はテストメソッドを呼び出す直前に呼び出され tearDown は呼び出された直後に呼び出されますか?

どのように解決するのですか?

一般的には、すべての前提条件のステップをsetUpに、すべての後始末のステップをtearDownに追加します。

例でもっと詳しく読むことができます はこちら .

<ブロッククオート

setUp()メソッドが定義されている場合、テストランナーは各テストの前にそのメソッドを実行します。 を実行します。同様に、tearDown() メソッドが定義されている場合、テストランナーは各テストの後にそのメソッドを呼び出します。 メソッドが定義されている場合、テストランナーは各テストの後にそのメソッドを呼び出します。

例えば、アイテムが存在すること、あるいは特定の状態を必要とするテストがあるとします。そのため、これらのアクション(オブジェクトインスタンスの作成、DBの初期化、ルールの準備など)を setUp に置きます。

これは、アプリの状態を初期状態に戻す必要があることを意味します。たとえば、ファイルや接続を閉じたり、新しく作成されたアイテムを削除したり、トランザクションコールバックを呼び出したりします。

つまり、テスト自体は結果を得るためにテストオブジェクトに対して実行されるべきアクションのみを含むべきで、setUpとtearDownはテストコードをクリーンかつ柔軟にするためのメソッドであるという考え方です。

たくさんのテストに対してsetUpとtearDownを作成し、親クラスで定義することができます - そうすれば、それらのテストをサポートし、共通の準備とクリーンアップを更新することが容易になります。

もし簡単な例をお探しでしたら を使用してください。