2

.NET で単体テストを作成するにはどうすればよいですか?

具体的には Visual Studio 2005 ですか?

4

8 に答える 8

3

NUnitを選択する場合は、 testdriven.netを確認することをお勧めします。これは、VisualStudioとの非常に優れた統合を提供するためです。現在利用可能な他の複数の単体テストフレームワークがあります。xUnitを検討することをお勧めします。「なぜ別の単体テストフレームワークなのか」というあなたの考えを知っています。確かに、それは例外的に優れているものではありませんが、それでもなおです。このブログ投稿を見て、VisualStudioの統合にReSharper プラグインを使用できると判断した場合。

于 2008-09-29T17:30:42.253 に答える
3

Visual Studio Team Suite 製品のいずれかを使用している場合は、Microsoft.VisualStudio.TestTools.UnitTesting を参照し、テスト クラスを TestClass 属性で装飾し、テスト メソッドを TestMethod 属性で装飾します。

NUnit のアプローチは似ていますが、NUnit.Framework を参照し、クラスは TestFixture で装飾され、テスト メソッドは Test で装飾されます。

于 2008-09-29T16:55:59.483 に答える
2

NUnitを使用した基本的なアイデアは次のとおりです

テスト プロジェクトを作成します。

テスト プロジェクトでアプリケーションのメイン プロジェクトを参照します。

テスト プロジェクトにテスト クラスを作成します。

追加Imports nunit.Framework

でクラスを飾ります<TestFixture()>

<TestFixture()> Public Class MyTestClass ...

それぞれが装飾されたテストメソッドを作成し、テスト<Test()>を追加します。

<Test()> _
Public Sub harness()
    Assert.IsTrue(False)
End Sub

テスト プロジェクトをビルドします。NUnit を開き、そこでテスト プロジェクトを開きます。「実行」をクリック 緑が合格、赤が不合格。

上記の「ハーネス」テストは、自分のものをテストする前に、すべてを接続したことを証明するためのものです。正しく接続されたら (そしてテストで失敗した場合)、「true」に切り替えます。NUnit は緑色で表示されます。

ここから、独自のプロジェクトのテストを追加し始めます。

于 2008-10-17T13:02:02.927 に答える
2

Team Suite 製品のいずれかを使用するか、NUnitなどのサードパーティ ツールを使用できます。

于 2008-09-29T16:48:34.243 に答える
1

ユニットテストを書く方法はたくさんあります。ユニットテストを実行するためのツールについて質問しているのか、ユニットテストのプロセスについて質問しているのかわからない。

NUnitは人気のあるテストツールです。Visual StudioTeamSuite製品と一緒に使用できるMicrosoftのMSTestも非常に優れています。

多くのテストを行う予定がある場合は、継続的インテグレーションについて読むことをお勧めします。

実際にテストを書くことに関する限り、それはStackOverflowにとって非常に複雑なトピックです。テストに関する記事を読むことをお勧めします。このトピックをカバーするものはたくさんあります。

于 2008-09-29T17:25:32.967 に答える
0

私の意見では、MBUnitは行く方法です。NUnit(非常に似ていますが、行テストとトランザクションのサポートがあります)や他のMSツール(Team Suiteはあまり成功しなかったので、使用をお勧めしません)よりもはるかに優れています。

MbUnitは、開発者とテスターがソフトウェアのすべての側面をテストできるようにする高度なフィクスチャを備えた高度な単体テストサポートを提供します。

于 2008-09-29T17:28:40.510 に答える
0

+1 MbUnit と efinetly を使用する testdriven.net

特にデータモデルのテストでは、はるかに高速であることがわかりました

于 2008-10-17T12:29:46.780 に答える
0

SpecUnit は、BDD スタイルの単体テスト用に NUnit に追加するのに適しています。「When_x_happens」などと呼ばれるクラスでテストを行うというアイデアが本当に気に入っています。そのクラスのメソッドは、x が発生したときに期待される結果を記述します-「foo_should_do_bar()」。SpecUnit には、テストからレポートを生成するためのツールもあり、これはドキュメントの優れたソースです。

于 2008-10-17T13:09:13.643 に答える