問題タブ [autofixture]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
473 参照

c# - Moq/AutoFixture で子供の嘲笑を止める

moq または Ploeh.AutoFixture.AutoMoq のいずれかがすべての子インターフェイスをモックしているときに、そのうちの 1 つを null にしたい場合に問題が発生しています。

私はNpocを使用しており、IDatabaseと呼ばれるインターフェースを持っています

IDbTransaction Transaction { get; }nullにしたいので嘲笑されたくありません が、嘲笑されています。

次に、IDatabase インターフェイスを持つ IUnitOfWork もあります。

// コード

Transaction は読み取り専用プロパティであるため、null に戻す方法がわかりません。

0 投票する
2 に答える
1935 参照

mocking - このテストは AutoFixture と Moq を適切に使用していますか?

このテストは AutoFixture と Moq を適切に使用していますか? できるだけ簡潔に書かれていますか?予想どおり、テストは失敗し、正しい実装を記述した後に合格します。

0 投票する
0 に答える
113 参照

autofixture - AutoFixture を使用して、親のプロパティに基づいて子オブジェクトのプロパティを割り当てるにはどうすればよいですか?

コレクションを持つOrderオブジェクトがありますShipmentsShipmentという性質がありますOrderId。AutoFixture をカスタマイズして、order.Shipments.All(s => s.OrderId == order.Id)真の順序を生成するにはどうすればよいですか?

クラス図

私はすでに次のテクニックを試しましたが、成功しませんでした:



これを行う最善の方法は何ですか?

0 投票する
1 に答える
3947 参照

moq - AutoFixture.AutoMoq:読み取り専用プロパティに値を設定します

AutoMoqでAutoFixtureを使用しています。ゲッターはあるがセッターはないプロパティを持つクラスの偽のインスタンスを作成しようとしています。AutoFixtureがモックを構成して、セッターがなくても指定された値を返すようにすることを期待しています。

私のコードはそのようなものです:

残念ながら、この場合、「With」メソッドは機能しません。これは、自動フィクスチャがデータにセッターがないと言っているため、後でモックを直接呼び出して値を設定する必要があるためです。

自動フィクスチャがそれ自体でこれを実行できる方法はありますか?コードの最後の行は必要ありませんか?

編集:私は間違いを犯しました、コード例は機能しません。そのはず

それでも、偽のインスタンス用のwithメソッドがあればよいでしょう。

0 投票する
3 に答える
3256 参照

moq - 手動の偽物を使用したAutoFixtureを使用したAutoData理論

このシステムをテストする場合:

そして、この単体テスト:

AutoFixture.XunitとAutoFixture.AutoMoqを使用するように変換するにはどうすればよいですか(手動の偽物を使用している間)?

実際のテストでは、手動の偽物はより複雑なインターフェースと動作を持ちます。匿名変数(expectedResult文字列)を手動の偽物のコンストラクターに渡したいことに注意してください。

0 投票する
1 に答える
1155 参照

autofixture - AutoFixture Freeze、SemanticComparison Likeness、CreateProxyを使用して単純なテストに合格しないのはなぜですか?

単純なクラスの2つのインスタンスを使用するCreateProxy()機能の使用方法を理解しようとしています。Likeness<T>()

次のテストでは、2つの文字列プロパティの値を持つインスタンスにaを使用FixtureCreate<T>ますBand

私はさまざまなアサーションを試しましたが、問題の核心は、CreateProxyメソッドがのプロパティを設定していないことであるようです。そのため、同じプロパティ値を持つのBand2つのインスタンスを比較しようとしても、メソッドのインスタンスは常にnull値があります。BandCreateProxy

私は何か間違ったことをしなければなりませんが、PloehブログとSOで見つけることができるすべてを読みました、そして私がしていることと比較するのに十分に単純な例を見つけることができません。何か案は?

0 投票する
3 に答える
13636 参照

c# - Ploeh AutoFixture は System.Runtime.Serialization.ExtensionDataObject からインスタンスを作成できませんでした

WCF サービスへの参照を含む MVC プロジェクトがあります。(ExtensionDataObject)ExtensionDataこれらの参照により、すべての DTO および Response オブジェクトにプロパティが追加されAutoFixture、これらの型の匿名インスタンスの作成に失敗するようになりました。

例:

コード:

例外:

Ploeh.AutoFixture.ObjectCreationException: Ploeh.AutoFixture.ObjectCreationException: AutoFixture は System.Runtime.Serialization.ExtensionDataObject からインスタンスを作成できませんでした。おそらく、パブリック コンストラクターがなく、抽象型または非パブリック型であるためです..

質問: このオブジェクトを AutoFixture 内に登録して、プロパティを持つすべてのオブジェクトでnull実行できるようにインスタンス化する方法はありますか?CreateAnonymousExtensionData

0 投票する
1 に答える
775 参照

c# - AutoFixture のカスタマイズで Dispose メソッドを呼び出す

AutoFixture カスタマイズを使用して、SQL Compact DB にアクセスするリポジトリをテストしています。

テストが完了したらすぐにこのデータベースを削除していただけると非常に助かります。db はカスタマイズ コンストラクターで作成されるため、削除するのに最適な場所は dispose メソッドであると思います。

私が考えているコードは次のとおりです。

同様のことを行うことは可能ですか?

0 投票する
1 に答える
1444 参照

c# - MoqAssert抽象メソッドが呼び出されます

AutoFixtureを使用してAbstractクラスの単体テストを作成しています。これは、私がやろうとしていることを表しています。

私の単体テストは次のようになります。

では、保護された抽象メソッドが実際にメソッドで呼び出されたことをどのように主張しますDoSomethingCoolか?

注入された依存性からのオブジェクトである場合、を使用してモックをセットアップし、メソッドが呼び出されたことを表明できますが、メソッドはテスト対象のサブジェクト内Moqの抽象メソッドであるため、メソッドが呼び出されたことをどのようにアサートしますか?

0 投票する
3 に答える
7167 参照

unit-testing - ICustomization、ISpecimenBuilder で Autofixture (v3) を使用してコンストラクター パラメーターを処理するにはどうすればよいですか?

Autofixture によって生成された古い文字列 (Guid-y のような値) では満足できない文字列コンストラクター パラメーターがクラスにあるというシナリオを克服しようとしています。

Mark Seemann の Ploeh ブログ エントリ on Convention-based Customizations へのリンクで簡単に答えたくなる前に、私はこのテストのためにそれと彼の他のブログ エントリを参照していると言っておきましょう。合格。

デバッグをステップ実行すると、ある時点でコンストラクター パラメーターが有効な値で渡されていることがわかりますが、テストは Guid-y Color 値で失敗します。これは、「色」パラメーター値と、Autofixture によって入力される「色」プロパティの両方があるという事実と関係があると思います。コンストラクター パラメーターに対処する ISpecimenBuilder を作成しましたが、パブリック プロパティの値をテストしているのでしょうか (2 つの異なること)?

この例ではこれがやり過ぎであることはわかっていますが、Build<T>().With()メソッドの使用が DRY ではない、より複雑なシナリオを想定しています。

失敗したテスト

SUT

CompositeCustomization の実装(この例では AutoMoqCustomization() は必要ないことはわかっています)

リーフ固有の ICustomization

色固有の ISpecimenBuilder を持つ文字列コンストラクター