Gur*_*epS 2 .net c# unit-testing
我正在使用Mono和Lokad质量库来开发一个API,它可以检查方法的特征,看看它们是否会抛出异常等等.
我在此API中使用的一种方法如下所示:
// Get all methods which have a NotImplementedException
var throwingMethods = _codebase.Methods
.Where(m => m.GetInstructions()
.Exists(i => i.Creates<NotImplementedException>())
).ToArray();
return throwingMethods;
Run Code Online (Sandbox Code Playgroud)
我怎么能对它进行单元测试?C#没有自己的本机能力做同样的事情.也许我可以只有一个小组件,制作一个硬编码的集合,并进行比较?
谢谢
您可以尝试模拟_codebase变量以返回一些预定义的单元测试方法.
如果_codebase由传递给您正在测试的类(构造函数注入)的构造函数的变量设置,那么这可能非常简单(当然假设该Methods属性是可覆盖的并且类没有被密封).