2017-09-27 4 views
0

私は静的バージョンのAutoMapperを使用しています。私はいくつかのProfileクラスを持っています。そこでは、コンストラクターにいくつかの依存関係があります。これらの依存関係には独自の依存関係があります。だから私の質問はAutoMapperを一度設定してから、これらの依存関係をどうやって模擬するのか、実際のオブジェクトのマッピングにこれを使用するので、私はこれらを最初に嘲笑すべきです。AutoMapper Profileクラス内にコンストラクタの依存関係を持たせることは正しいですか?テスト中に問題が発生する可能性がありますか?

答えて

0

特に静的なテストを実行する場合は、テストを並行して実行すると、モックするのは難しいです。だからあなたができることは、静的バージョンのAutoMapperを使わないことです。私たちは注入するAutoMapperインターフェイスを使用します。つまり、オートマッペ自体を常に模倣することができます。

あなたが模擬したいかどうかについては、5つの異なる方法で同じマッピングを使用すると想像してください。今度はユニットテストを書く必要があります。ユニットテストは正しいマッピングが5回正しいことを確認します。代わりに、マッピングが呼ばれたことを確認して、automapperに対して直接マッピングする単体テストを書くことができます。

これを可能にするために必要な変更がそれに値するのかどうかは、あなた次第です。あなたが最初から新しいデザインをするなら、私はそれを私が記述したようにするよう助言することができます。もう少し書くだけですが、単体テストと簡単な結合を簡単に行うことができます。

関連する問題