私はSpecflow(C#キュウリ)でBDDのアプローチで六角形のアプリケーションを開発しています。六角形のアプリケーションの自動テストの合成根
生産アダプターではなく、コアを実行してテストダブルを内部六角形のポートに注入する自動シナリオシステムテストを実装したいと思います。
私もcomposition-rootパターンを使用しています。これは、コアの依存関係がコアの外側で解決されていることを意味しています。つまり、すでに私の匂いがしています(コアの外側の六角形への依存性を解決し、コアの内部依存関係はどうですか?)。
通常、テストクラスは依存性を解決し、テストダブルを注入しますが、今度はコアもアセンブルできなければなりません。したがって、コアの依存関係を解決するための単一のポイントはありません。テストではコンポジションルートをコピーする必要があります。コアの内部サービスをプロダクションコンポジションルートで置き換えて動作を変更した場合、テスト・コンポジション・ルートが依然としてサービスの古い実装を注入する原因となります。
この問題の正しい解決方法を教えてください。 ありがとう
この記事はあなたに役立ちます:http://www.dotnetcurry.com/patterns-practices/1337/automated-testing-using-composition-root-csharp –
ありがとう、それは助けになった! – Rob80