2017-09-27 9 views
0

정적 버전의 AutoMapper를 사용하고 있습니다. 거기에 몇 가지 종속성이있는 생성자에서 자신의 종속성이있는 일부 프로필 클래스가 있습니다. 그래서 내 질문은 우리가 AutoMapper를 한 번 설정했기 때문에 어떻게 이러한 종속성을 모의합니까? 그리고 이것을 실제 객체 매핑에 사용할 것이기 때문에 나는 이것을 조롱해야합니다.AutoMapper Profile 클래스 내에 생성자 종속성을 갖는 것이 맞습니까? 테스트 중에 문제가 발생할 수 있습니까?

답변

0

특히 정적으로 테스트를 실행하는 경우 정적 테스트를 사용하면 모의하기가 어렵습니다. AutoMapper의 정적 버전을 사용하지 않는 것이 가장 좋습니다. 우리는 우리가 주입하는 AutoMapper 인터페이스를 사용합니다. 즉, 우리는 언제나 자동 응답기 자체를 모의 할 수 있습니다.

모의하고 싶은지 여부에 따라 5 가지 방법으로 동일한 매핑을 사용한다고 상상해보십시오. 이제 매핑이 올바른지 5 번 확인하는 단위 테스트를 작성해야합니다. 대신 맵핑이 호출되었음을 확인하고 automapper에 대해 직접 맵핑하기위한 유닛 테스트를 작성할 수 있습니다.

가능한 한 변경해야 가능한지 여부를 결정하는 것은 사용자의 책임입니다. 당신이 처음부터 새로운 디자인을한다면, 나는 그것을 설명하도록 조언 할 수있다. 조금 더 글쓰기는하지만 단위 테스트를 쉽게하고 느슨한 결합을 수정하십시오.