48

私は c# を使用しており、単体テストと統合テストでは、通常、属性に基づいてフィールドを自動的に入力する必要があります。

ユーザーデータをデータベースに書き込んで戻すことができるかどうかをテストするとしましょう。

  • ユーザーオブジェクトを作成し、フィールドにデータを入力し、ユーザーをデータベースに書き込みます
  • データベースからユーザー オブジェクトを読み取る
  • 私が書いたものが私が読んだものと同じかどうかフィールドをチェックしてください

ユーザーにテスト データを自動的に入力し、2 つのオブジェクトの値が同じかどうかを確認するフレームワークはありますか?

サンプルコードはこれが好きかもしれません

User user = new User();
AutoPopulator.Populate(user);
user.Save();
4

4 に答える 4

89

あなたはそれが関連していると思うかもしれません。以下は、現在の他のいくつかのフレームワークのリストです。

有名で尊敬されている:

あまり知られていない:

なじみのない:

于 2012-07-05T06:53:14.783 に答える
18

NBuilderを見てください。ランダムなデータ、増分値、およびおそらく考えられるあらゆるものを使用してテストオブジェクトを構築できます。すべての素晴らしい流暢なインターフェースを介して。

于 2009-10-25T21:25:36.527 に答える
3

はいあります。これは、 Stephen BohlenによるSummer of NHibernateシリーズのセッション #3 を見ているときに見つけました。

彼の会社であるMicrodeskは、テスト フィクスチャの構築時にデータベースの状態を保存し、各テストの開始時にデータベースの状態を設定し、テスト フィクスチャの分解時にデータベースの元の状態を回復できるユーティリティを開発しました。 .

ここからユーティリティをダウンロードします: Microdesk.Utility.UnitTest

使用方法のチュートリアルについては、Summer of NHibernate セッション #3 ビデオをご覧ください。

于 2009-10-23T12:32:55.990 に答える
-1

Fluent NHibernateには、自動入力部分を除いて、ウィッシュリストのすべてを提供する機能があります。

リンク:http ://wiki.fluentnhibernate.org/Persistence_specification_testing

ただし、コードコントラクトを使用したC#を考えると、リフレクションを使用して有効なオブジェクトを自分で自動的に魔法のように作成することは難しくありません。

于 2009-10-25T21:12:59.827 に答える