약간 새로운 단위 테스트이며 Visual Studio 2012에서 Moq 및 MSTest를 사용하여 내 응용 프로그램 중 하나의 메서드에 대한 테스트를 만들려고합니다. 응용 프로그램은 정상적으로 작동하지만, 내 테스트를 실행할 때, 나는 다음에 null 참조 예외를 받고 있어요 :웹 API RouteUrl이 테스트에서 null 예외를 반환합니다.
var fooURL = Url.RouteUrl("MyApi", new { httproute = string.Empty, controller = "MyController", id = id }, Request.Url.Scheme);
내가 읽고 ASP.NET MVC: Unit testing controllers that use UrlHelper 주위에 내 머리를 포장하려했지만, 이러한 우려로 표시 url 자체 테스트. 나는 내 기능에서 나중에 오는 것을 시험하는 것에 더 관심이있다.
위 링크에 언급 된 설정이 너무 작아서 테스트가 제대로 작동하지 않습니까? 아니면 잘못된 방향으로보고 있습니까?
null이 정확히 무엇입니까? 그것은'Request' 또는'Request.Url' 또는'Request.Url.Scheme'입니까? – ashes999
불행히도, 나는 그것을 결정하는 방법을 모르겠습니다. 오류 메시지가 나타납니다. System.NullReferenceException : 개체 참조가 개체의 인스턴스로 설정되어 있지 않습니다. StackTrace를 두 번 클릭하면 위의 줄에 나타납니다. –
문제 없습니다. TestDriven.NET을 다운로드하십시오. 테스트에 중단 점을 설정하십시오. 마우스 오른쪽 버튼을 클릭하고 Test With, Debugger라고 말하십시오. 변수를 검사하거나'Watch '를 사용하여 알아 내십시오. – ashes999