通过测试类别,可以根据为各组测试分配的类别运行各组测试,无须保留测试列表。 测试类别是一种测试方法特性,可将其分配给一个或多个测试。
可以在测试类别中使用逻辑运算符,从而运行来自多个类别的测试,或将运行的测试仅限于属于多个类别的测试。 此外,在创建测试方法时很容易添加测试类别,创建测试方法后也无需维护测试列表。
要求
- Visual Studio 旗舰版, Visual Studio 高级专业版, Visual Studio 专业测试工具版
创建和分配测试类别
手动向测试添加测试类别
在解决方案资源管理器中的单元测试项目或编码的 UI 测试项目中,打开包含相应单元测试的文件,然后找到要更改的单元测试方法。
在紧挨该测试方法声明的上方,为要分配给该测试的每个测试类别添加 [TestCategory()] 特性。 使用逗号分隔每个特性。
向每个 [TestCategory()] 特性添加用括号括起来的类别名称。 下面是一个方法示例,其中包含分配给该测试的三个测试类别,分别名为“Nightly”、“Weekly”和“ShoppingCart”:
[TestCategory("Nightly"), TestCategory("Weekly"), TestCategory("ShoppingCart"), TestMethod()] public void DebitTest() { }
按类别运行测试
从命令行运行测试时,还可以基于分配给测试的类别,使用逻辑运算符 & (AND)、| (OR) 和 ! (NOT) 选择要运行的测试。
从命令行使用类别运行测试
打开一个 Visual Studio 命令提示符。
为此,请选择**“开始”,指向“所有程序”,指向“Microsoft Visual Studio 2013”,指向“Visual Studio 工具”,然后选择“开发人员命令提示”**。
默认情况下,Visual Studio 命令提示在以下文件夹位置打开:
<驱动器号>:\Program Files\Microsoft Visual Studio 12.0\VC
备注
若要更改默认情况下命令提示符窗口打开的文件夹,请选择“开始”,指向“Microsoft Visual Studio 2013”,指向“Visual Studio 工具”,右击“开发人员命令提示”,然后选择“属性”。在“开发人员命令提示属性”对话框中,可以在“起始于”框中更改默认文件夹的路径。
将目录更改为解决方案文件夹中测试容器(通常为测试项目的 .dll 文件)所在的位置,或者在步骤 3 中运行 MSTest.exe 程序时指定测试容器的完整路径或相对路径。
若要标识解决方案文件夹,首先请标识 Visual Studio 的**“Projects”文件夹。 为此,请在 Visual Studio 中选择“工具”菜单上的“选项”,再选择“项目和解决方案”。 在“Visual Studio 项目位置”**下,将看到如下路径:
<drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects
解决方案文件夹通常是此**“Projects”**文件夹的子文件夹,如以下示例中的 Bank 文件夹:
<drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\Bank
若要运行分配给“Nightly”类别的测试,请使用 TestCaseFilter 选项或使用 /testcontainer 和 /category 选项从 MSTest.exe 运行 VSTest.Console.exe:
VSTest.Console.exe
Vstest.console.exe myTestProject.dll /TestCaseFilter:TestCategory=Nightly
MSTest.exe
mstest /testcontainer:MyTestprojectName.dll/category:"Nightly"
结果和摘要将显示在命令提示窗口中。
备注
可以在表达式中使用 AND 或 OR 来选择测试的类别,但不可在同一表达式中同时使用二者。
有关详细信息,请参阅 VSTest.Console.exe 命令行选项、使用 MSTest 从命令行运行自动测试以及 MSTest.exe 命令行选项。