【发布时间】:2022-05-18 18:36:08
【问题描述】:
我维护了一个类库,其中包含几个参考实现来演示如何使用该库。我有 .Net Framework、core、.NET 5 的参考实现,现在我使用最少的 API 添加了 .NET 6 的参考实现。
对于我的所有其他参考实现,我已使用System.Diagnostics.CodeAnalysis 将ExcludeFromCodeCoverage 属性添加到它们的所有包含类中。我将如何为 .NET 6 最小 API 做类似的事情?
我的program.cs 看起来像这样:
using Microsoft.AspNetCore.Mvc;
using SharedDataLayer.Repositories;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSingleton<PaymentRepository>();
var app = builder.Build();
app.MapGet("/Payments", ([FromServices] PaymentRepository repo) =>
{
return repo.GetPayments();
});
app.Run();
【问题讨论】:
-
你用的是什么代码覆盖率工具?
-
JetBrain 的 dotCover
-
这里的包含类是
Program。 -
听起来问题出在顶级语句,而不是最小的 API。您可能正在尝试禁用整个
Program.cs的测试覆盖率,而不仅仅是app.MapGet