c# - 将 C# 委托(delegate)转换为单元测试

标签 c# unit-testing

为了减少代码重复,我想从各种来源以编程方式生成单元测试。我能想到的一种简单方法是从一个方法中生成一大堆委托(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/

相关文章:

c# - yield 返回和 "not all code paths return value"

python - Python的单元测试可以像 Nose 一样并行吗?

flutter - 单元测试 GetxController

python - 如何使用多个后端运行相同的单元测试套件

c# - Appharbor 上的多个事件结果集(MARS)如何启用?

c# - 以编程方式在联机和脱机之间移动 OneDrive 文件

c# - 取消设置用于序列化的 DependencyProperty

c# - 方法参数困境

java - 我想按顺序运行三个 @Test 方法

.net - 如何为每个测试提供自己的 TestResults 文件夹?