Autofac 컨테이너를 특정 인터페이스로 등록해야합니다.이 경우 모의를 해결하고 싶습니다.moq에 autofac 사용
어떻게하면됩니까?
나는 시도했다 :
var AppContainer = ApplicationContainer.GetApplicationContainer();
var cb = new ContainerBuilder();
cb.RegisterType<Mock<IStudyLoader>>().As<IStudyLoader>().SingleInstance();
cb.Update(AppContainer);
내가 IStudyLoader
이상의 뭔가를 해결하려면 코드를 변경하지 않지만, Mock<IStudyLoader>
이 IStudyLoader
에 대한 대용 아니다; 예 : 은 IStudyLoader
을 대신 할 수 있지만 유형이 아니기 때문에 Mock<IStudyLoader>.Object
레지스터는 사용할 수 없습니다.
정확함 제발; 나는 뭔가를 놓치고 있다는 느낌을 가지고있다.
(나는 다른 제한, 내가 ApplicationContainer.GetApplicationContainer()
이외의 용기를 사용할 수 있습니다)
(나는 그것을 수동으로 할 때 테스트 의존성을 주입하는 것이 낫다 생각하지만, 내가 생산 코드이 시간을 변경하지 않으 .)