测试 NUnit 启动 Azure 函数

Testing NUnit Startup Azure Function

我想用 NUnit 对此 class 进行单元测试,我该怎么做?

using Microsoft.Azure.Functions.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
using Universal.DataTransferNCFDGII.Function.Services;

[assembly: FunctionsStartup(typeof(Universal.DataTransferNCFDGII.Function.Startup))]

namespace Universal.DataTransferNCFDGII.Function
{
    public class Startup : FunctionsStartup
    {
        public override void Configure(IFunctionsHostBuilder builder)
        {
            builder.Services.AddSingleton<IInsertData, InsertData>();
        }
    }
}

通常您不会测试 classes 和方法 Startup 和 Configure,因为您没有真正的逻辑需要测试。您只是在测试依赖注入设置是否有效,而那不是您的代码。在编写测试时记住只测试您的代码而不是第三方或 .NET 库是一个很好的做法。最好用集成测试来覆盖它,而不是单元测试。

如果您担心没有对此 class 和方法进行测试会影响您的代码覆盖率,您可以将 ExcludeFromCodeCoverage 属性放在您的方法或 class 上,如下所示:

[ExcludeFromCodeCoverage]
public override void Configure(IFunctionsHostBuilder builder)