17

それらの両方の異なる目的は何ですか?つまり、それぞれをどの状態で行うべきですか?

例の条件について。バックエンド サーバーと複数のフロントエンド Web がある場合、最初にバックエンド サーバーのユニット テストを行うか、最初に Web UI で UI テストを行うか、どちらを行いますか? 条件を考えると、サーバーとフロントエンド Web は既に存在するため、(TDD) と共に構築する反復設計ではありません...

4

4 に答える 4

36

単体テストの目的は、コードの小さな部分 (個々のクラス/メソッド) を他の部分から切り離してテストすることです。

UI テストは、システム/機能/受け入れテストの別の名前である場合があります。このテストでは、システム全体を一緒にテストして、実際の状況で想定どおりに動作することを確認します。(UI テストとは、ユーザビリティ/ルック アンド フィールなどのテストを意味する場合を除き、通常は UI の詳細に制約されます。)

ほとんどのプロジェクトでこれらの両方が必要ですが、開発中の単体テスト (理想的には最初からTDDスタイル) と、テストする完全なエンド ツー エンド機能が実際に完成した後の UI テストです。 .

すでにシステムを実行しているが、テストを行っていない場合、実際にはレガシー コードがあります。最初に最小限の労力で達成可能な最高のテスト カバレッジを取得するように努めます。これは、高レベルの機能テストを意味します。単体テストを追加することも必要ですが、それにはより多くの労力が必要であり、後で返済し始めます。

推奨読書:レガシー コードを効果的に使用する

于 2011-03-02T10:47:15.180 に答える
1

ユニットテストは常に実行する必要があります。ユニットテストは、テクニカルソリューションの各UNIT(読み取り:オブジェクト)が期待される結果を提供することを証明するためにあります。非常に(多分)簡単に言えば、ユーザーテストは、システムがユーザーのニーズと要求を満たしていることを確認するためにあります。

于 2011-03-02T10:51:28.487 に答える