我有一系列单元测试来验证我的ORM域模型中的结构。第一个测试计算元数据中的实体数量,所以假设146个实体。
这意味着我需要146个单元测试来验证property\collection
名称。
我的问题是我需要一个测试来测试测试:)
有没有办法验证实体count ==测试方法计数(其中名称以X开头,因为类中有很多方法)
答案 0 :(得分:0)
如果我理解您要验证的问题,那么您已经在ORM解决方案中为每个实体编写了测试。具体来说,您假设如果有146个实体,您应该有146个相应的测试。实际上,您希望断言您已经编写了正确数量的测试。
最明显的解决方案是在测试程序集上使用反射并提取您正在寻找的测试。您可以在此处执行许多简单的操作,包括构建实体的哈希集以及使用命名约定或您定义的自定义属性来识别测试夹具。
然而,在遇到类似问题之前,或许更优雅的解决方案是使用一些自定义测试框架代码,使用元数据和反射来测试实体。这里也出现了“如何测试测试”问题,但是可以通过编写一些测试来缓解这些问题,这些测试证明了长手形式测试和自定义测试框架可以实现相同的结果。如果您可以证明您的自动化是合理的,那么您对测试的维护问题就不再成为问题。另一个优点是,如果测试经常运行,您可以随机化测试数据并发现实体中的意外问题。