【发布时间】:2019-06-16 18:49:54
【问题描述】:
我想编写一个单元测试来检查 C# MSTest 中的 HashSet 以覆盖我班级的 ICollection,如下所示:
public ICollection<ObjectClass> Object { get; private set; } = new HashSet<ObjectClass>();
有人知道如何断言这部分代码吗?
编辑1: 我不想忽略或排除自动属性初始化器我正在寻找一种测试它们的方法
【问题讨论】:
-
我不会测试它是否是一个强硬的 HashSet,因为该类公开了一个 ICollection。我只会在创建类的新实例时测试它不为空且为空(假设它是非静态、非抽象类的属性等等)。
-
我认为这根本不应该被测试
-
@Marco 确实,它已经有了tests。
-
任意的 100% 覆盖率报告都是无稽之谈。对此进行测试有什么用?
-
@PayamKhaninejad:这是一个带有自动实现属性的错误,您不应该测试。最新版本的 dotCover 应该已经修复了它。 MSTest 的 Code Coverage 分析也有同样的 bug
标签: c# unit-testing testing mstest dotcover