【发布时间】:2023-01-16 21:48:16
【问题描述】:
我在 .net core 3 中看到 IClassFixture<WebApplicationFactory> 用于 IntegrationTests,现在我想为 .et6 项目编写集成测试,我应该使用什么代替 .net 6 中的 IClassFixture<WebApplicationFactory> 用于 IntegrationTests?
这是我尝试过的:
public class TicketControllerTests : IClassFixture<WebApplicationFactory<Program>>
{
private readonly HttpClient _client;
public TicketControllerTests(WebApplicationFactory<Program> factory)
{
_client = factory.CreateDefaultClient();
}
[Fact]
public async Task Get()
{
var response = await _client.GetAsync("/Tickets/Test");
//Assert
Assert.Equal(HttpStatusCode.OK, response.StatusCode);
}
}
在这里我得到这个错误:
【问题讨论】:
-
IClassFixture是 xUnit 的一部分——它在 .NET 的所有版本中始终可用,并记录在此处:xunit.net/docs/shared-context
标签: c# asp.net asp.net-core integration-testing xunit