우리가 개발/품질 보증을 할 때 종종 현재 날짜/시간이 지금이 아닌 다른 척해야합니다. 날짜에 의존하는 일종의 논리를 사용하는 것이 일반적입니다.Override DateTime.Now
간단한 예 : 2010 년 12 월 15 일에서 1 월 3 일 사이에 상점의 제품을 사용할 수 있다고 가정합니다.이 두 날짜는 DB에 저장되며 코드는 DateTime.Now
과 비교합니다. 이것은 명백하게 어떻게 든 테스트되어야합니다. 질문은 어떻게?
지금까지 우리는 단지 사용자 정의 Date
객체를 추가하고 현재 날짜에 의존 할 수 있으며 슈퍼 절름발이 느낀다 제 3 자 코드를 포함하지 않는 대신 DateTime.Now
의 Date.Now
를 사용하여 시행하려고했습니다.
Windows에서 시스템 날짜를 변경하지 않고도 날짜 대체를 처리하는 좀 더 정교한 방법이 있는지 궁금합니다. 내가 Microsoft Moles에서 당신이 DateTime.Now
에 대한 호출을 대체 할 것 절연 프레임 워크를 살펴보고 당신을 추천 할 것입니다 순수 .NET에서 방법은 없습니다
나는 이것을 더 좋아한다. 설치 노력은 무엇입니까? VS 프로젝트없이 이것을 사용할 수 있습니까? –
설치가 간단하며 문서를 사용할 수 있습니다. VS 프로젝트없이 실행하면 정확히 무엇을 의미합니까? Moles를 사용하는 단위 테스트를 컴파일해야하며 단위 테스트가 작동하려면 Moles 프로파일 러에서 실행해야합니다. –
알았어. MbUnit 또는 NUnit에서 Moles를 사용할 수 있습니까? –