VS2010单元测试 - 使用不同参数重新运行相同的测试

lac*_*dev 6 unit-testing mstest visual-studio-2010

我有一个单元测试,根据传递的参数,行为不同.VS 2010 MS测试框架是否具有使用不同参数调用相同测试的功能.我正在寻找这样的东西:

[TestRun(False)]
[TestRun(True)]
[TestMethod]
public void FooTest(bool a)
{
   RunTest(a);
}
Run Code Online (Sandbox Code Playgroud)

Dro*_*per 7

我不知道为什么Micosoft决定不将这个功能包含在他们的单元测试框架中,每当我搜索它时,我都会找到对DataSource属性的引用,该属性允许从外部资源(XML文件,数据库等)加载数据.

如果您不想使用和外部数据源,那么您有两个选择:

  1. 使用MSTest可扩展性框架添加RowTest支持 - 在此处进行解释
  2. 我在博客中写道如何使用PostSharp 从测试属性创建外部数据源.

如果你已经在使用VS2010,我建议你选择第一个选项 - 在微软的代码库中甚至还有一个完整的工作代码.