Ninject와 Moq를 사용하여 ASP.NET MVC 3 용 유닛 테스트 클래스를 설정하는 방법에 대한 샘플을 많이 보았지만 모두 테스트 클래스 내에 모의 저장소 (mock repository)를 만드는 것이 포함된다.ASP.NET MVC 3, Ninject, Moq : 유닛 테스트 클래스 외부의 모의 저장소 인스턴스화
내가 시작하고 싶은 것은 응용 프로그램 시작 또는로드시 모의 저장소를 빌드하는 것입니다 (예 : Global.asax.cs).이를 대신 테스트 클래스에 전달하십시오. 그렇게하면 unit test 클래스를 변경하지 않고도 Ninject AllBindings()
메서드에서 세션 상태 저장소 또는 데이터베이스 저장소로 변경할 수 있습니다. 난 이미 응용 프로그램의 시작이 있습니다
ControllerBuilder.Current.SetControllerFactory(new NinjectControllerFactory());
이 난 global.asax.cs에 바인드 명령을 넣어 파악할 수 있지만, 어떻게는 테스트 클래스에 전달받을 것인가? Test> Run을 선택하면 global.asax.cs도 실행됩니까? 어떤 컨텍스트 (있는 경우)가 테스트 클래스를 호출하는지 잘 모르겠다. 이 작업을 수행하는 방법에 대해 머리를 감쌀 수 없으며 저장소를 먼저 작성한 다음 테스트 클래스에 전달하는 예제는 보지 못했습니다.
가능한가요, 그렇다면 어떻게 할 수 있습니까? 어떤 조언을 주셔서 미리 감사드립니다! 아마도 Global.asax.cs에, 그래서 - - 대신 내 테스트 클래스에이 통과
Ah! 이제 나는 내 머리를 감싸고있다. 그 점을 명확히 해 주셔서 감사합니다! –