質問

数年間フルタイムで .NET を使用していなかった後、もう少し .NET に戻ってきましたが、最近の優れた単体テスト パッケージは何だろうと考えています。

私は NUnit については (数年前に) 知っており、rspec のようなものを実現することを目的として IronRuby を簡単に試してみましたが、それ以上のことはあまり知りません。

これについては Google で検索して終わりにすることもできますが、ここで質問したほうがより適切で情報に基づいた回答が得られると思います :-)

提案はありますか?

役に立ちましたか?

解決

気が狂うほどたくさんあります。めちゃくちゃ良いと思います。

  • 保守的なタイプ(私)にとっては、 NUnit はまだ利用可能であり、依然として十分な機能を備えています。
  • Microsoft タイプの場合、 MSTテスト 十分ですが、Nunit と比べると遅くて扱いにくいです。また、Visual Studio の高価なバージョンに大金を支払わなければ、コード カバレッジも不足します。
  • それもあります MbUnit. 。NUnit に似ていますが、RowTest (異なるパラメータで同じテストを実行する) や Rollback (テスト後にデータベースを元の状態に戻す) などの気の利いた機能があります。
  • そして最後に、 xUnit.net ある程度の態度を持ったトレンディなオプションです。
  • ああ、それと テストドリブン.NET Nunit と MBunit の両方の IDE 統合が可能になります。

きっとみんな元気だよ。ただし、箱から出してすぐに 1 つの IDE にすべてが含まれる利便性を単に享受するのでなければ、私は MSTest からは遠ざかると思います。

スコット・ハンセルマン まさにこのトピックに関するポッドキャストがあります。

他のヒント

私たちはNUnitを使用しており、 MBユニット ここ。を使用しております テストドリブン.NET Visual Studio 内から単体テストを実行します。私たちは優れた、強く推奨されるものを使用しています ライノモック モックフレームワークとして。

NUnit に固執します。MSTest には絶対に近づかないでください。

NUnit + ReSharper は本当に楽しく作業できます。

以前は NUnit を使用していましたが、現在は次の 2 つの重要な機能のために MbUnit を使用する傾向があります。1.RowTest 機能を使用すると、異なるパラメータのセットに対して同じテストを簡単に実行できます。これは、本当に完全なカバレッジが必要な場合に重要です。2.ロールバック機能を使用すると、データベースに対してテストを実行しながら、テストのたびに変更をロールバックして、データベースを毎回まったく同じ状態に保つことができます。[Rollback] 属性を追加するのと同じくらい簡単です。

MbUnit のもう 1 つの優れた点は、その構文が NUnit とほぼ同じであるため、NUnit の下にすでにテスト ベッド全体が配置されている場合は、(ほとんど?) コードを変更することなく、参照を切り替えるだけで済みます。

xUnit.net は、N/MB/MS/Unit に対して少し異なるアプローチを提供しているようで、興味深いです。

rspec に似たソリューションを探していたところ (rspec が大好きなので)、次のようなものも見つけました。 Nスペック, 、少し冗長に見えますが、 NSpec 拡張機能 C#3 拡張メソッドを使用するためのアドオン、かなり良さそうです。

私は以下を使用します:

テストドリブン.NET - Visual Studio 用の単体テスト アドオン

タイプモックアイソレーター- .Net単体テスト用のモックフレームワーク

NUnit - C# によるオープンソースの単体テスト フレームワーク。

これは古い質問ですが、Gallio v3.1 が IronRuby 経由で RSpec をサポートしていることは興味深いかもしれません。

好き テストドリブン.NET (私は ReSharper を使用していますが) かなり満足しています XUnit.net. 。多くの人が嫌がるテストではなく事実が使われていますが、私は用語の違いが気に入っています。ソフトウェアに関する自動的に証明可能な事実のコレクションを考えて、変更を加えるときにどの事実に違反しているかを確認すると便利です。

を注意 Visual Studio 2008 Professional (およびそれ以降) には、統合された単体テストが付属しています。 (以前は Team System Edition でのみ利用可能でした)、ニーズに適している可能性があります。

IronRuby を使用して .net lib をテストする小さな例を作成しました。http://khebbie.dk/post/2008/08/Example-of-using-ironRubys-mini_rspec-library.aspx

以前は NUnit を使用していましたが、機能が豊富なため MbUnit に切り替えました。私はRowTestが大好きです。これにより、テストをパラメータ化できます。ただし、NUnit にはもう少し優れたツール サポートがあります。ReSharper を使用して MbUnit テストを実行しています。TestDriven.NET で MbUnit の SetUp メソッドを実行すると問題が発生しました。

これは本当に私の個人的な意見です (フォーラムなので冗長だと思います)。NUnit、MSTest などはすべてほぼ同じことを行います。しかし、私は NMock が不可欠であると感じています。

NMock やモック パッケージは単体テストではありませんが、単体テストが非常に簡単になるため、そうすべきです。

好き MbUnit, えっと、 ガリオ. 。私にとって最も重要なのは、Visual Studio 内で優れたツールがサポートされていることです。そのために私が使っているのは リシャーパー, 、 MbUnit テストランナー. 。多くの人が気に入っているようです テストドリブン.NET 彼らのテストランナーとしても。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top