2017-01-25 2 views
0

나는 내 자신의 html 도우미 작업을하고 있습니다. 그리고 이제 그것을 테스트하고 싶습니다. 내가 선택한 방법은 RazorEngine 라이브러리를 사용하여 면도기 코드를 컴파일하고 결과를 확인하는 것입니다.RazorEngine을 사용하여 맞춤 html 도우미를 테스트하는 방법

string template = "<div>@Html.Raw('sdf')</div>"; 
Engine.Razor.AddTemplate("mytemplate", template); 
var r = Engine.Razor.RunCompile("mytemplate"); 

하지만이 경우에 오류가있어 - Additional information: Errors while compiling a Template.

나는이 질문에 RazorEngine issues with @Html을 찾았을 :

이 잘 나는 다음과 같은 샘플을 시작했습니다. 그러나 너무 오래되었다.

답변

0

Html.Raw는 면도칼의 일부가 아닙니다. 당신은 @Raw을 사용할 수 있습니다 대신

예 :

var template = "<div>@Html.Raw(\"<strong>Bold!</strong>\")</div>"; 
template = template.Replace("@Html.Raw", "@Raw"); 
var r = Engine.Razor.RunCompile(template, "templateKey"); 
정확히 당신이 여기 테스트 려
0

- 당신의 HTML 도우미 일을 무엇인가?

단위 테스트를 수행하는 것은 html 헬퍼에서 매우 간단합니다. HtmlHelper 클래스는 메서드를 호출 할 때 작성되는 스트림 작성기에 액세스 할 수있는 ViewContext 클래스를 사용합니다. 당신이해야 할 일은 기대 한 결과와 함께 이것을 시험하는 것뿐입니다.

필요한 것보다 훨씬 더 큰 범위를 테스트하므로 RazorViewEngine 인스턴스를 만들 필요가 없습니다.

이렇게해야합니다. https://www.danylkoweb.com/Blog/the-ultimate-guide-to-unit-testing-in-aspnet-mvc-E2

관련 문제