NUnit / TestDriven(产品,而不是方法),默认情况下可以忽略一类测试吗?

时间:2011-03-29 11:08:02

标签: nunit

我们正在使用NUnit定义自动化性能测试。但是,由于其中许多将运行一段时间,以满足系统的时序和负载的不准确性,我们不希望开发人员必须在正常开发下运行这些。

我们有什么方法可以指示TestDriven Visual Studio插件忽略一组单元测试,这样如果程序员只需右键单击单元测试项目并选择“Run Tests”,那么这些测试就不会被执行?

默认情况下,默认情况下忽略测试的唯一方法是通过[Explicit]属性,但这意味着我在测试服务器上会产生维护开销,因为似乎没有办法执行所有明确的测试一下子都没有命名。

或者我应该将所有性能测试分离到单独的项目中,并指示程序员不要管它(至少在他们需要更新测试之前)?

2 个答案:

答案 0 :(得分:1)

我会创建一个单独的测试程序集。然后,您可以在一次装配中进行正常的单元测试,在第二次装配中进行性能测试。

这样,在开发时,开发人员从不运行perf测试。在构建时,您可以执行两个测试程序集,以确保Unit&运行Perf测试。

我这样做不仅仅是为了让一些测试不必运行,而是可以更好地区分该组件中的内容。这个新的程序集不是一组“单元”测试。当你带上新的开发者时,对你们如何编写测试没有任何困惑。你不会想要一个新人看着一个性能测试并且想到如何编写单元测试。

至于具体问题,请让TestDriven避免运行性能测试,检查“工具 - >选项”下的设置对话框:

TestDriven.NET Options

答案 1 :(得分:0)

[ignore]属性怎么样?也许我是误会,但听起来像这样会对你有所帮助??