4

私がDjanoアプリを持っているとしましょう。ユーザーは、サインアップ、アクティベーションメールの受信、アカウントのアクティベーション、およびログインを行うことができます。ログイン後、ユーザーは、マネージャーを使用してモデルを処理するカスタムフォームを使用して、オブジェクトを作成、更新、および削除できます。

ここで何をテストする必要がありますか?リクエストフレームワークを使用してリクエストを作成し、ビューとフォームを介してチェーン全体をテストする必要がありますか、それともマネージャーとモデルをテストするための単体テストを作成する必要がありますか?

チェーン全体をテストすると、URLが適切に構成され、ビューが期待どおりに機能し、フォームがデータを適切にクリーンアップし、モデルとマネージャーもテストすることがわかります。Djangoテストフレームワークは、この種のテストよりも単体テストを対象としているようです。(これはツイルとセレンでテストする必要があるものですか?)

ユニットテストを書くとき、私は飼い葉桶とモデルをテストするようになりますが、URLとフォームは実際には機能しませんね?!

本当に基本的な質問ですが、いくつかの基本事項を正しく理解したいと思います。

みんなありがとう。

4

1 に答える 1

2

はい、クライアント機能を使用したDjangoユニットテストでは、ルートとフォームが正しいかどうかをテストできます。

外部からの本格的なビヘイビア駆動テストが必要な場合は、ZombieのようなBDDフレームワークを使用できます。

どのテストが必要かについては、Djangoの作者であるJacobKaplan-Mossが質問に簡潔に答えました。

私の一般的なテスト哲学は、何か愚かなことが起こるまで働き、それから愚かなことが二度と起こらないことを確認するためのテストを書くことです。

于 2011-09-04T20:15:53.063 に答える