在Nancy中测试自定义引导程序

本文关键字:自定义 引导程序 测试 Nancy | 更新日期: 2023-09-27 18:10:05

所以我有一个CustomBootstrapper,它做了很多应用程序初始化,包括IoC注册和Quartz调度器设置。这些模块也严重依赖于SuperSimpleViewEngine

现在我需要测试这个,当然是使用MSTest,现在每个人都可能已经发现这是行不通的。南希的家伙们很早就发现了这一点,并提供了这个解决方案:https://github.com/NancyFx/Nancy/wiki/Nancy-Testing-View-Location我认为这是有效的,因为当我在我的测试用例中试图创建我的引导程序的实例时,它失败了,因为有多个RootPathProviders。

所以解决方案,似乎是使用一个ConfigurableBootStrapper。所以我想唯一的问题是,我如何确保ConfigurableBootStrapper的设置方式与我的CustomBootStraper相同?

在Nancy中测试自定义引导程序

        var browser = new Browser(cfg =>
        {
            cfg.RootPathProvider<YourRootPathProvider>();
            cfg.Module<YourModule>();
        });

在您的测试中,创建一个测试引导程序,它继承自定义的引导程序,然后只覆盖中断的功能。使用该测试引导程序进行测试,假设您的覆盖是最小的。