8

私はしばらくの間TDDを練習しています。スキルを向上させ、ATDDを始めたいと思っています。ルビーとJavaのフレームワークについて読みましたが、.NETについてはあまり聞きませんでした。

受け入れテストを作成するための.NETで最も維持されている最新のフレームワークは何ですか?

編集:もっと読んだ後、私はWebサイトとWebアプリケーションの受け入れテストに関連していたことに注意したいと思います。おそらく、GUIテストも考慮する必要があります。

4

3 に答える 3

1

FitNesseを使い始めたばかりですが、これまでのところ、この決定に満足しています。非常に簡単な概要:

  1. あなたはWikiでテストを書きます。
  2. Wikiの「テスト」とSUT(テスト対象システム)の間のブリッジを提供する「テストフィクスチャ」モジュール(ac#アセンブリの場合もあります)を作成します。
  3. テストを実行すると、FitNesseエンジンはリフレクションを使用して、Wikiテストをテストフィクスチャアセンブリへの呼び出しに変換します。テストフィクスチャアセンブリはSUTを呼び出します。戻り値はWikiに戻されるため、「アサート」できます。

テストフィクスチャコードのパブリックインターフェイスは、実際にはWikiでテストを作成するために使用する言語です。これをうまく説明したかどうかはわかりませんが、ウェブ上にはたくさんのリソースやビデオがあります。FitNesseの作者であるBobMartinからのこれをお勧めします。

FitNesseを選んだ理由はいくつかあります。

  • 確立されたフレームワーク
  • FitSharpプラグインを使用して.NETで動作します:http://fitnesse.org/FitNesse.DotNet
  • Wikiのテストは、フィクスチャコードで定義した言語で記述されているため、読み取り可能です。
  • テストは、継続的インテグレーションに必要なコマンドラインから呼び出すことができます。
  • ロバスト1:SUTのインターフェースが変更された場合、テストではなく、テストフィクスチャコードを変更するだけで済みます。
  • 堅牢2:揮発性UIレベルでのテストは行っていません。

慣れるまで少し時間がかかりますが、UIを介したテストという現在の概念よりもはるかに信頼性が高いと思います。現在、これは自作のアプリケーションで行っています。このアプリケーションは、事前に記録されたUIアクションを再生し、スクリーンショットを比較することで機能します。テストが赤の場合、SUTが実際に壊れているために発生することはめったにありません。通常、UIコントロールがすぐに反応しないというタイミングの問題があるため、UIアクション間に遅延を組み込む必要があります。つまり、テストの完全なスイートを実行するには一晩かかります。

于 2011-11-25T15:50:01.157 に答える
0

mSpec(マシン仕様)は非常に人気のあるTDD/BDDフレームワークです。

nUnitは、単体テストフレームワークです(受け入れテストにも使用できます)。

于 2011-11-25T15:05:33.530 に答える
-1

Ranorexをかなり新しいツールの1つと考えてください。

http://www.ranorex.com/

彼らは、単体テストAPI、自動化エンジン、およびテストレコーダーを含む完全なツールセットを提供する上で素晴らしい仕事をしています。つまり、テストをC#で作成するか、レコーダーを使用してテストを「記録」し、レコーダーがテストをC#コードとして書き込みます。

次に、C#コードを実行して、それらを「返信」します。必要な数のアサートを作成し、自動化APIを使用すると、画面に表示されているものをすべて自動化できます。

ATDDに最適なツールです。しばらくの間使用しており、満足しています。

于 2011-11-25T15:14:31.850 に答える