MiB*_*ena 5 c# integration-testing xunit.net asp.net-core
我有一个Asp.Net Core 6 Web Api申请。
我按照此处的WebApplicationFactory<Program>建议进行了集成测试。我将它注入到 xUnit 测试类中 。IClassFixture<WebAdminTestApplicationFactory<Program>>
根据文档:
如果您的类拥有一个字段或属性,并且其类型实现 IDisposable,则包含类本身也应该实现 IDisposable。实例化 IDisposable 实现并将其存储为实例成员的类也负责其清理。
那么为什么 MSDN 集成测试示例不将WebApplicationFactory其作为字段处理呢?
不应该WebApplicationFactory处理掉吗?因为它确实实现了 IDisposable。
在这种情况下,您的测试类不拥有 WebApplicationFactory<Program>:它是由 xUnit 注入的,xUnit 会Dispose为您创建并调用它。
请参阅测试之间的共享上下文:类装置:
使用类固定装置时,xUnit.net 将确保在任何测试运行之前创建固定装置实例,并且一旦所有测试完成,它将通过调用 来清理固定装置对象(
Dispose如果存在)。
| 归档时间: |
|
| 查看次数: |
2279 次 |
| 最近记录: |