首页 > 解决方案 > 使用来自外部文件的数据进行 xUnit 测试

问题描述

这些天来,我试图了解 xUnit 测试是如何工作的,特别是,我发现有 3 种方法可以将数据作为参数传递以测试类方法(InlineData、ClassData 和 MemberData)。但这是我的问题:有没有机会从外部文件中获取这些数据?(例如一个 Json 文件)我找不到足够的关于这个主题的材料,感谢您的关注!

标签: c#xunitxunit.net

解决方案


xUnit 被设计为可扩展的,例如通过DataAttribute

InlineDataClassDataMemberData都派生自DataAttribute,您可以扩展自己来为数据理论创建自定义数据源,您可以在其中读取外部文件并使用例如Json.NET来反序列化您的数据。

正如您所提到的,用户Sock在他的关于JSON的博客中写道:

与CSV文件中的数据相关的问题: 如何使用 CSV 文件中的数据运行 XUnit 测试

这里有两个xUnit示例:


推荐阅读