1

単体テストにObject Motherを使用していますが、すべての OM クラス == 重複するクラス構造を書きたくありません。OM クラスを自動的に生成するベース OM クラスを作成することは可能ですか?

class MyNewObjectMother: ObjectMother<SomeClass>{}

これにより、すべてのプロパティが public として作成され、クラス オブジェクトを作成してすべてのプロパティを注入するメソッド CreateInstance が作成されます。出来ますか?ベストプラクティスは何ですか? または、自動T4コード生成などかもしれません。ありがとうございます。

4

3 に答える 3

3

shamp00 が指摘するように、Object Mother のより保守しやすい代替手段はTest Data Builder patternです。NBuilder とは別に、Test Data Builder パターンも実装するAutoFixtureを検討することもできます。

次のようなテスト インスタンスを作成できます。

var sc = fixture.Build<SomeClass>().With(x => x.Foo, "Foo").Build();

他の多くの機能と同様に; 上記の例は、表面をなぞっただけです。

于 2015-07-28T12:22:44.810 に答える
0

DTO の T4 テンプレートを試すこともできます: http://www.taimila.com/blog/dto-builders-with-t4/

それは役に立つことができます

于 2015-07-28T11:42:54.927 に答える