TDD에 착수하고 있습니다. 서비스 참조를 추가하여 프로젝트를 테스트하는 것이 좋지 않은지 또는 WCF 서비스에 의존하는 테스트에서 위조 된 서비스를 조롱하는 경우를 알고 싶습니다.WCF + TDD : 테스트 프로젝트에 서비스 참조를 추가하는 중 : 불량입니까?
답변
예 단위 테스트 프로젝트에 서비스 참조를 추가하는 것은 좋지 않습니다. 생성 된 서비스 계약 인터페이스를 사용하여 테스트에서 실제 WCF 서비스 동작을 조롱 할 수 있습니다.
또한 WCF 배관을 테스트하는 경우 테스트 프레임 워크 스레드를 호스트 (MSTEST 또는 기타)로 사용할 수 있습니다. 이것은 IIS와 같은 것을 호스트로 사용하지 않는다고 가정합니다. –
서비스 참조를 사용하는 대신 서비스 계약을 사용하여 ChannelFactory를 조롱 할 수 있습니다.
TDD 근처에서이게 뭐야? TDD는 존재하지 않는 서비스에 대해 먼저 테스트를 작성하고 실패한 테스트를 작성할 때 서비스를 구현한다는 것을 의미합니다. – PositiveGuy
내 문장의 키워드가 모의라고 생각합니다. 서비스가 구현하는 계약서를 갖게 될 것이므로 조롱 프레임 워크 (MOQ 등)를 사용하여 테스트를 수행 할 대상을 부여하십시오. 여기에 언급 된 것과 같은 http://fczaja.blogspot.co.uk/2012/10/mocking-wcf-client-with-moq.html – Rus
서비스를 참조하는 것이 좋지 않은 경우 게이트웨이 패턴을 구현하는 것이 좋습니다. IMyFooServiceGateway를 추가 추상화 레이어로 사용합니다. 이 방법을 사용하면 앱을 좀 더 느슨하게 결합하고 추가 테스트 가능성을 얻을 수 있습니다 (테스트 프로젝트에서 IMyFooServiceGateway가 포함 된 분리 어셈블리를 참조하고 IMyFooServiceGateway를 구현하는 모의 객체를 생성하거나 Rhino Mock과 같은 모의 프레임 워크 사용 당신을 위해 하나를 만들 수 있습니다.
을 대상 시험을위한 프로젝트가 서비스 참조가있는 경우 테스트 프로젝트에 추가 서비스 참조를 추가 할 필요가 없습니다.
를 서비스 참조가 추가되면 프로젝트에 일반적으로 생성 된 코드에는 서비스에 공개적으로 액세스 할 수있는 인터페이스가 포함되어 있으므로 테스트 프로젝트는이 인터페이스를보기 위해 대상 프로젝트를 참조하기 만하면됩니다.이 인터페이스는 사용자의 조롱 선택의 라이브러리 또는 수동으로 조롱.
생성 된 인터페이스가 인터페이스의 일반적인 "IFoo"명명 규칙을 따르지 않아도되므로주의해야합니다. 즉각적인 것은 아닙니다.
- 1. 프로젝트에 WCF 서비스 추가
- 2. FitnessRece의 WCF 서비스 테스트 중 WebReference를 추가해야합니까?
- 3. WCF 서비스 테스트
- 4. WCF 서비스 참조를 만드는 올바른 방법은 무엇입니까?
- 5. 프로젝트에 어셈블리 참조를 추가하는 데 문제가 발생했습니다.
- 6. WSDL을 통해 Visual Studio에 서비스 참조를 추가하는 중 오류가 발생했습니다.
- 7. 기존 형식을 사용하여 서비스 참조를 추가하는 중 오류가 발생했습니다.
- 8. WCF 서비스 -로드 테스트
- 9. TDD 테스트 구조 질문
- 10. ASP.NET MVC 프로젝트에 WCF 서비스 추가
- 11. WCF - 서비스 참조를 만들 수 없습니다.
- 12. TDD 및 테스트 데이터
- 13. WCF 서비스 응용 프로그램 테스트
- 14. 단위 테스트 내 wcf 서비스
- 15. wcf 서비스 스트레스 테스트 방법
- 16. [assembly : PexLinqPackage]를 테스트 프로젝트에 추가하는 방법
- 17. ASMX에서 WCF 서비스 문제로 서비스 업데이트 중!
- 18. WCF 서비스 참조 업데이트
- 19. WCF 서비스 - MaxReceivedMessageSize 오류
- 20. 서비스 참조를 업데이트하는 중 예외가 발생했습니다!
- 21. WCF 테스트 클라이언트에서 WCF 서비스 라이브러리를 테스트 할 수 없습니다.
- 22. 여러 프로젝트에서 서비스 참조를 업데이트 하시겠습니까?
- 23. 프로젝트에 대한 참조를 C#
- 24. WCF 서비스 계약에 연산을 추가하면 모든 WCF 클라이언트가 참조를 업데이트해야합니다.
- 25. wcf 서비스 참조 구성
- 26. WCF 서비스 이용 방법
- 27. WCF DataContact 추가하는 방법?
- 28. Silverlight의 WCF 프로젝트에 액세스하십시오.
- 29. VS2010 addin에서 WCF 서비스 참조를 새로 고칠 수 있습니까?
- 30. TDD - 인터페이스의 존재 여부 테스트
자세한 내용이있는 문서가 있습니까? –
나는 그것을 얻지 않는다. TDD 서비스를 원하십니까? 이것은 TDD가 아니므로 실제 서비스 구현 (서비스 클래스!)을 만드는 TDD 메소드를 작성해야합니다. – PositiveGuy
예, 항상 웹 서비스를 조롱하고 프록시 참조를 사용하지 않아야합니다. – PositiveGuy