2008-09-10 1 views

답변

0

흥미로운 질문입니다! 내 자신의 환경 설정은 반사 기반 구문 (표준 구문에 의한 것)에 대한 것입니다. 나는 이것이 매우 마찰이 없다고 주장 할 것이다. 많은 여분의 코드를 추가하지 않기 때문이다. 제대로 구현 된 것처럼 인터페이스에서 스텁을 직접 참조한다.

매우 성가신 일이지만 저는 Fluent 문법도 매우 좋아합니다. Record/Replay 구문은 Fluent 구문만큼 복잡하지는 않지만 (겉으로는 그럴 듯하지는 않지만) 적어도 직관적이지는 않습니다. 필자는 NMock2 만 사용 했으므로 Record/Replay 구문은 약간 외계인이지만 Fluent 구문은 꽤 친숙합니다.

그러나 this post과 같이 사용자가 기대치를 검증/주장에서 분리하는 것을 선호하는 경우 Fluent 구문을 선택해야합니다. 궁극적으로 스타일과 개인 취향의 문제입니다.

1

Arrange, act, assert. 저는 MoQ를 사용하고 Arrange, Assert, Act, Verify를 선호합니다. 나는 끝까지 무거운 짐을 싣기보다 행동하기 전에 모든 것을 준비하고 싶습니다.

1

.NET 2.0의 경우 레코드/재생 모델을 사용하는 것이 좋습니다. 우리는 이것이 검증과 기대를 명확히 구분하기 때문에 이와 같습니다.

using(mocks.Record()) 
{ 
    Expect.Call(foo.Bar()); 
} 
using(mocks.Playback()) 
{ 
    MakeItAllHappen(); 
} 

.NET 3.5 및 C# 3을 사용하는 경우 유창한 구문을 사용하는 것이 좋습니다.