문제
Autofac에 등록 된 많은 유형이 있으며 일부 종속성은 다소 깊습니다. 등록 된 모든 유형을 해결할 수있는 테스트 방법이 있습니까? 나는 응용 프로그램 시작에서 빠르게 실패하고 몇 분 후에는 나중에 들어가고 싶다.
이것이 제가 현재하고있는 일이며 효과가있는 것 같습니다. 그러나 더 나은 방법이 없는지 여전히 궁금합니다.
public void VerifyAllRegistrations()
{
foreach (IComponentRegistration registration in _container.ComponentRegistrations)
{
bool isNewInstance;
registration.ResolveInstance(_container, new Parameter[0], new Disposer(), out isNewInstance);
}
}
private class Disposer : IDisposer
{
public void Dispose()
{
// no-op
}
public void AddInstanceForDisposal(IDisposable instance)
{
instance.Dispose();
}
}
해결책
AutoFAC는 해당 효과에 아무것도 제공하지 않습니다. AutoFac은 ResolveInstance에 대한 응답으로 구성 요소를 생성하기 때문에 생성자 부작용 등에 직면하게됩니다.
통합 테스트가이를 해결하는 가장 좋은 방법입니다.
제휴하지 않습니다 StackOverflow