【发布时间】:2010-10-05 04:46:09
【问题描述】:
我正在尝试在 .NET 3.5 中设置一个构建后事件,该事件将运行一套带有 MS 测试的单元测试。我发现this 帖子显示了如何使用 MbUnit 调用 bat 文件,但我想看看是否有人用 MS 测试做过这种类型的事情?
如果是这样,我会对 bat 文件的样例感兴趣
【问题讨论】:
标签: unit-testing build-process mstest
我正在尝试在 .NET 3.5 中设置一个构建后事件,该事件将运行一套带有 MS 测试的单元测试。我发现this 帖子显示了如何使用 MbUnit 调用 bat 文件,但我想看看是否有人用 MS 测试做过这种类型的事情?
如果是这样,我会对 bat 文件的样例感兴趣
【问题讨论】:
标签: unit-testing build-process mstest
我们以相同的风格使用 NUnit,并决定迁移到 MSTest。这样做时,我们只是将以下内容添加到适用的 MSTest 项目的 Post-Build 事件中:
CD $(TargetDir)
"$(DevEnvDir)MSTEST.exe" /testcontainer:$(TargetFileName)
完整的 MSTest 命令行选项集可以在 applicable MSDN site 找到。
【讨论】:
我个人不建议将运行单元测试作为编译过程的一部分。相反,请考虑类似 ReSharper(+ 适当的单元测试运行程序,或者他们现在如何称呼这些)或其他一些 GUI 运行程序。
【讨论】:
不是在构建后事件中进行,每次编译时都会发生这种情况,我会考虑设置一个持续集成服务器,如CruiseControl.Net。它将为您提供一个紧密的反馈周期,但不会在您每次构建应用程序时都运行测试来阻止您的工作。
如果您想运行您当前正在开发的一组测试,Anton 建议使用ReSharper 会很有效。您可以创建一个测试子集以在您希望时执行,并且它足够聪明,可以在需要时为您编译。当您在那里获取演示时,如果您还没有许可证,请获取Team City。它是另一个有前途的 CI 服务器。
如果您想使用这种方法来控制构建质量,您可能会发现随着测试数量的增加,您不再希望每次按 F5 测试更改时都等待运行 1000 个测试.
【讨论】: