Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 翁布拉科单元测试_C#_Unit Testing_Umbraco7 - Fatal编程技术网

C# 翁布拉科单元测试

C# 翁布拉科单元测试,c#,unit-testing,umbraco7,C#,Unit Testing,Umbraco7,尝试使用PublishedContentRequest方法来执行几个单元测试。由于这是一个单独的项目,仅用于单元测试,因此没有Umbraco上下文 只是想知道是否有其他人对以这种方式测试Umbraco有意见。还需要了解它期望的uri是什么。例如是“联系我们”、“联系我们”或“/contact-us”。还想知道如何正确设置routingcontext 现在有这样的东西: private static void SetupControllerContext(UmbracoContext umbCtx

尝试使用PublishedContentRequest方法来执行几个单元测试。由于这是一个单独的项目,仅用于单元测试,因此没有Umbraco上下文

只是想知道是否有其他人对以这种方式测试Umbraco有意见。还需要了解它期望的uri是什么。例如是“联系我们”、“联系我们”或“/contact-us”。还想知道如何正确设置routingcontext

现在有这样的东西:

private static void SetupControllerContext(UmbracoContext umbCtx, ControllerBase controller)
    {
        var contextBase = umbCtx.HttpContext;
        var pcr = new PublishedContentRequest(new Uri("/contact-us"), umbCtx.RoutingContext);

        var routeData = new RouteData();
        var routeDefinition = new RouteDefinition
        {
            PublishedContentRequest = pcr
        };
        routeData.DataTokens.Add("umbraco-route-def", routeDefinition);
        controller.ControllerContext = new ControllerContext(contextBase, routeData, controller);
}
任何指点都很好


谢谢

基本上有两种选择。您可以自己设置和模拟Umbraco,也可以从Github获得Umbraco源代码并构建项目并使用其Umbraco。使用Tests helper library可以非常轻松地模拟和设置Umbraco部件,只需进行单元测试即可

关于这个问题,实际上有两篇好文章

要深入了解,请滚动您自己的视角,这是一篇很好的文章和教程:

单元测试Umbraco-合理

要了解有关自己的roll的提示,但更多关于如何使用Umbraco.Tests库的信息,请查看以下帖子:

两者都在Github上提供源代码,因此您可以自己使用它们的技术


就我个人而言,我正在着手这项工作,并决定采用Umbraco.Tests库方法。然而,我真的希望有一个Nuget存储库,我可以确保测试库与我的Umbraco Nuget软件包同步。

您好,谢谢您的帮助,非常感谢,我将在本周内收集这篇文章,好好玩一玩,只是有几件事情需要紧急处理。这将是好的,最终得到一些地方。干杯