繁体   English   中英

MSTest:测试分组

[英]MSTest: Grouping of Tests

我正在使用MSTest为现有应用程序设置UnitTest Suite。

该应用程序支持两个不同的数据库(SQLServer和MSAccess),因此我们希望每个单元测试都能在两个数据库上运行。

我已经通过以下类构造实现了此功能

namespace SQLServer {
    [TestClass] public class SQLServer : TestCases { }
}
namespace MSAccess {
    [TestClass] public class MSAccess : TestCases { }
}

public abstract partial class TestCases {
    //Tests for Module1
    [TestMethod] public void Module1_Test1() { }

}
public abstract partial class TestCases {
    //Tests for Module2
    [TestMethod] public void Module2_Test1() { }
}

这或多或少地按预期工作,但是当然不是很好,因为所有TestMethod必须在同一类中。 缺点还在于,不同模块的两个TestMethod不能具有相同的名称,从而使方法的名称不必要地长。

但是,我的主要问题是我TestMethod按模块对TestMethod进行分组。 我在测试资源管理器中实现的分组是:

UnitTestProject (Project name)
  UnitTestProject.SQLServer (Namespace name)
    SQLServer (Class name)
      Module1_Test1 (Function name)
      Module2_Test1
  UnitTestProject.MSAcccess
    MSAccess
      Module1_Test1
      Module2_Test1

我真正想要的是:

UnitTestProject 
  SQLServer
    Module1
      Module1_Test1
    Module2
      Module2_Test1
  MSAccess
    Module1
      Module1_Test1
    Module2
      Module2_Test1

有没有办法做到这一点?

使用TestCategory属性,并确保在“测试资源管理器”窗口中按“特质”对测试进行分组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM