単純なアプリケーションの場合、VS2008に組み込まれているMSTestフレームワークは、すべてのボックスにチェックマークを付ける必要があります。 NUnitと同じではありませんが、多くの人が(誤って)それが同じものであるかのように参照します。
私は嘲笑のためにそれを使ったことがないので、他の人がそれについて詳しく説明することができます。それは、テスト目的のためだけに、ソリューション内に別のプロジェクトを生成します。 This is a good explanation of how to use it.
編集: はもう少し掘りをして、私はMSTestをし、NUnitののthis comparisonに出くわしました。 NUnitのフレームワークの
欠点:NUnitのの
- インストールは別々のMSIに入っています。
- Visual Studioとの統合がありません。
- 手動でテストケースを作成する必要があります。
- コードの自動生成がありません。
- テストケースを実行するには、個別のウィンドウ(NUnitコンソールまたはGUI)を開く必要があります。
- テストケースの実行の順序は使用できません。
- テストケースをデバッグするための組み込み機能がありません。
- テストケースを有効/無効にするための組み込み機能がありません。コンピュータ名、クラス名とホスト・タイプに基づいてテストケースをソートする
- スタックトレースのようなテストケースの追加情報を提供することはありません作り付けの機能は、トレース情報など
- ん作り付けの機能など
だこと私がリンクしている比較記事から。
私は、C#とJava用のJUnitのための唯一のMSTestををNUnitのを使用したことがないので、私は一種のバイアスされ、その点でです。 MSTestを、常に、個別にテストを実行します(個別のトレースログと)実際に詳細なレポートを表示し、すべての定型テストコードを自動生成し、作るもののすべてのそれらの種類を行うことができることなどの機能で、私のためだけでなく、本当にのWinFormsためを働いていますVS2008は素晴らしいIDEです。そのサウンドによって、NUnitは他の人にはうまくいきました。なぜなら、彼らはそれが好きな理由があります。
特定の機能が必要なようなNUnit/Testdriven.NETのアプローチを取る特別な理由がないか、テストを設定してVSに戻す方法を好むだけであれば、ボックスからすぐに動作するMSTestを使用しない理由はありません。
多くの人がTestDriven.NETを使用してNUnitを起動すると不公平に思えます。それは素晴らしい統合を提供し、あなたが言及する欠点の大部分を取り除きます。 NUnit [Ignore]属性は、[Test]メソッドまたは[TestFixture]クラスを無効にします。また、IMHOのテストケースを注文するのはちょっと臭いです:) – si618
ouch。 600文字で十分ではありません。 1.それは良いです。 VSTSをインストールすることなく、任意の(ビルド/ QA)マシンでテストを実行できます。 2.テストを右クリックして実行するには、Resharper/TestDriven.Netアドインを入手します。 SO q#196740も参照してください。 #3,4,6,10 - 意味がありません。私はプログラマーがVSよりもコードをよく理解していると思う。その結果、どのテストを書くかをより明確にすることができます。しかし、私はテスト感染しています(TDDの熱狂者を読んでください)。テストケースはオーダー依存であってはいけません。なぜそれが不利なのかは不明です。 – Gishu
Contd ...テストケースをデバッグすることができます(テストDLL用にデバッグする外部exeとしてnunitを追加します)。それはあなたがあなたのコードをもう知らないことを意味します。テストケースをソートする - なぜあなたがそれを必要とするのか再び分かりません。しかし、あなたは[カテゴリ( "スローテスト")]のようなカテゴリにあなたのテストをグループ化してから、それらをテスト実行に含めるか除外することができます。また、実行したいテストを手動でチェックすることができるチェックボックスビューもあります。最後に9. stacktrace - nunitは最初のタブでそれを行います。ユニットテストフレームワークは、テストが失敗した正確な場所を指していないと、やや不具合になります。 – Gishu