2013-12-20 5 views

답변

0

모델을 테스트 할 때 뷰 모델의 종속성에 대해 더미 구현을 만들어야합니다. 먼저, 뷰 모델에 종속성을 전달할 때 클래스가 아닌 인터페이스를 사용하고 있는지 확인하십시오. 대신이의 예를 들면 다음과 같습니다

public MyViewModel(RegionManager rm, UnityContainer container) { ... } 

이 같은 인터페이스를 사용할 수 있습니다

public MyViewModel(IRegionManager rm, IUnityContainer container) { ... } 

그런 다음, 당신이 그 인터페이스를 구현 더미 클래스를 생성 할 수 있습니다. 테스트에서 의존성 주입 컨테이너를 사용하는 경우 인터페이스를 해당 구현에 매핑하여 더미 클래스를 해당 클래스로 내보낼 수도 있습니다. 당신은 단순히보기 모델에 사용되는 더미 IRegions의 컬렉션을 호스팅 할 IRegionManager 인터페이스의 간단한 구현을 만들 수 있습니다지역 관리자의 특별한 경우를 들어

. 이와 같이 뷰 모델의 동작을 테스트하는 데 UI가 필요하지 않습니다.