为了减少代码重复,我想从各种来源以编程方式生成单元测试。我能想到的一种简单方法是从一个方法中生成一大堆委托(delegate),该方法解析一些配置信息并使用 [TestMethod]
属性标记所有这些委托(delegate),然后由 visual studio 运行测试框架。
我的动机是尽可能多地使用 visual studio 的测试报告工具,因为我可以通过使用 C# 的一些反射工具为测试编写自己的报告层,但我宁愿不这样做。我的解决方案看起来非常优雅和简单,但我无法让 visual studio 的测试框架理解我到底想做什么,所以有人知道如何去做我想做的事吗?
最佳答案
您可能需要考虑 Pex (可能还有 Moles 用于遗留代码)来自 Microsoft Research。 Pex 是一个研究项目,可以自动生成具有高代码覆盖率的单元测试,并且可以为测试选择有趣的输入和输出。我猜那里有一些情报。 :)
我没有亲自使用过,但我听一些同行说 Pex 和 Moles 非常有趣并且帮助了他们。可能值得一看。
希望这对您有所帮助!
关于c# - 将 C# 委托(delegate)转换为单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6803845/