複数の展開モードをサポートするプロジェクトがあります: InMem、OnPremise、Cloud。また、各プロジェクトには、WCF または API のいずれかに接続できる TimeDistance などの小さなサービスがあります。
unitTestMockup では、使用したいものを言うことができます:
Service.TimeDistance = new WCFTimeDistance() / new APITimeDistance().
今まではWCFTimeDistanceしかありませんでしたが、現在は APITimeDistanceに移行する移行モードになっていますが、その間、テストを実行するときに、WCF で 1 回、API で 1 回実行する必要があります。
これを行うための良いアプローチは何ですか?
I use C# 4.5
Microsoft.VisualStudio.QualityTools.UnitTestFramework as framework for unitTests
必要なワークフローの簡単な例は次のとおりです。
1)Mockup: Service.TimeDistance = new WCFTimeDistance();
2)UnitTest: CheckDistanceBetweenTwoLocationsTest()
{
Service.TimeDistance.CalculateDistance(Location1, Location2) // WCFTimeDistance
}
3)Mockup: Service.TimeDistance = new APITimeDistance();
UnitTest: CheckDistanceBetweenTwoLocationsTest()
{
4)Service.TimeDistance.CalculateDistance(Location1, Location2) // APITimeDistance
}