.net-core - .net core xunit 测试项目中 Autofixture 的 AutoData 属性
问题描述
我可以AutoData
在 .net core 2.2 xunit 测试项目中使用吗?
AutoFixture.Xunit
针对 .NET Framework 4.5.2,我无法使用它。也许还有其他适用于 .net 核心的 NuGet 包?
解决方案
如果您查看 nuget.org 上的AutoFixture.Xunit 包,您可能会注意到以下内容:
通过利用 xUnit.net 的数据理论特性,这个扩展将 AutoFixture 变成了一个用于编写单元测试的声明性框架。在许多方面,它变成了一种单元测试 DSL(领域特定语言)。对于 xUnit.net 2,请使用 AutoFixture.Xunit2 NuGet 包。
(我的重点。)
此外,如果您展开Dependencies部分,您会注意到包的依赖约束:
AutoFixture (>= 4.6.0)
xunit (>= 1.8.0.1549 && < 2.0.0)
xunit.extensions (>= 1.8.0.1549 && < 2.0.0)
请特别注意,对xunit的约束是< 2.0.0
. 换句话说,它只适用于 xunit 1.8.0.1549 到 1.9.2(我相信这是低于 2.0 的最新版本)。
如果您想使用 xUnit.net 2.0 或更高版本,您应该按照文档所述使用AutoFixture.Xunit2包。更新的版本也支持 .NET Core。
推荐阅读
- security - 如果我们存储银行详细信息,我们应该采取哪些安全措施?
- reactjs - 在 react-router 中使用 useParams 传递参数 onChange
- highcharts - 在 Highstock 中设置日期选择的开始日期
- sql - 如何修改列typeorm中的值
- swagger - Swagger 错误(未知查询参数“范围”),在 Google OAuth 重定向之后
- android - 抽屉标题图像未填满屏幕
- c# - 当 xamarin.ios 应用程序在真实 iPhone 中处于后台时,DatabaseReference.ObserveEvent(DataEventType.ChildAdded, OnMessageAdded) 没有被监听
- php - 为不同客户同时支持 PHP SDK 中的 guzzle 6 和 guzzle 7
- plot - 如何增加gnu图中标签和抽动之间的间距?
- clickhouse - 为什么 clickhouse 需要这么多内存来完成一个简单的查询?