使用Post-Build事件在.NET 2.0+中使用MS Test执行单元测试

时间:2009-02-03 16:09:39

标签: unit-testing build-process mstest

我正在尝试在.NET 3.5中设置一个后期构建事件,该事件将运行一套带MS测试的单元测试。我发现this帖子显示了如何使用MbUnit调用bat文件,但是我想知道是否有人用MS测试做过这类事情?

如果是这样,我会对bat文件的样本感兴趣

3 个答案:

答案 0 :(得分:10)

我们使用相同风格的NUnit并决定转移到MSTest。这样做时,我们只是将以下内容添加到适用的MSTest项目的Post-Build事件中:

CD $(TargetDir)
"$(DevEnvDir)MSTEST.exe" /testcontainer:$(TargetFileName)

可以在applicable MSDN site找到完整的MSTest命令行选项。

答案 1 :(得分:3)

就个人而言,我不建议将运行单元测试作为编译过程的一部分。相反,考虑像ReSharper(+适当的单元测试运行器或他们现在如何称呼这些)或其他GUI运行器。

答案 2 :(得分:2)

不是在后期构建事件中执行此操作,而是每次编译时都会发生这种情况,我会考虑设置像CruiseControl.Net这样的持续集成服务器。它将为您提供严格的反馈周期,但不会阻止您在每次构建应用程序时运行测试的工作。

如果您想要运行目前正在开发的测试集,Anton建议使用ReSharper将会很有效。您可以根据需要创建要执行的测试子集,并且在需要时可以为您编译。当你在那里拿起演示时,如果你还没有许可证,请选择Team City。这是另一个有一些承诺的CI服务器。

如果您想使用此方法来控制构建质量,您可能会发现随着测试数量的增加,您不再需要等待每次按F5测试更改时运行1000个测试