다음과 같은 문제가 있습니다. 단위 테스트에서 Ninject를 사용하고 싶습니다. 이것에 대해 내 생각은 다음과 같다 :모의 객체를 바인딩하기위한 테스트 메소드 내에서 로컬로 Ninject 바인딩을 오버라이드합니다.
1) 나는 시험 안에 사용 내 가짜 객체를 바인딩 모듈 내부에 글로벌 바인딩 스키마를 정의
2) 내부에 로컬로 바인드 모의 객체를 사용하여 테스트
바인딩 구성을 로컬에서 덮어 쓰는 방법을 찾지 못했습니다. 제 생각으로 예상치 않게 모의 개체를 만듭니다. kernel.Get() 메서드를 사용하여 모든 바인딩이있는 개체를 반환합니다. 각각의 테스트가 기대와 함께 테스트 내에서 로컬 mock 객체를 추가한다는 점을 제외하고는, 이것은 테스트 당 하나의 바인딩만을 오버라이드하기 때문에 읽기 쉽고 유지하기가 쉽습니다. ar 테스트 문맥을 알 수 없으므로 모듈 내부에서 구성 할 수 없으므로 모의 테스트를 수행합니다.
어떻게하면 C# 및 nunit을 사용할 수 있습니까? 내 방법론이 잘못된 경우 올바른 것을 듣고 싶습니다.
또는 http://autofixture.codeplex.com –
을 사용하거나 AutoMoq - https : // github 사용을 고려해보십시오.com/darrencauthon/AutoMoq – viggity
테스트중인 내용이 DI 바인딩의 유효성이 무엇인지, 응용 프로그램 환경에 있지 않으면 바인딩에 덮어 써야합니다 (예 : 구성 파일을 찾을 구성 서비스에 대한 바인딩)? –