如何在一个自动化脚本中覆盖多个测试用例

时间:2014-12-25 18:29:00

标签: c# testing automation case

在许多情况下,我发现为每个小测试用例编写脚本是多余的。如何使用Microsoft VS编写可以测试多个测试用例的脚本,并将结果报告给Microsoft MTM中的每个关联测试用例,而无需单独运行每个测试用例。比如说,我有一个弹出的是/否/取消对话框,并且有一个测试用例来验证三种情况中的每一种情况。所有三种情况都可以在一个脚本中验证。是否可以将每个测试用例关联到同一个脚本,并通过仅运行一次脚本将结果报告给每个测试用例?

1 个答案:

答案 0 :(得分:0)

您可以使用MSTest.exe或VSTest.console.exe通过命令行运行TestMethods。可以在批处理文件中调用MSTest.exe或VSTest.console.exe。

分配用户定义的testcategory属性以对测试进行分组。请参考Defining Test Categories to Group Your Tests。例如

[TestCategory("Nightly"),
 TestCategory("Weekly"), 
 TestCategory("ShoppingCart"), 
TestMethod()]
public Void DebitTest()
{
}

[TestCategory("Nightly"),
 TestCategory("Weekly"), 
 TestCategory("ShoppingCart"), 
TestMethod()]
public Void CreditTest()
{
}

[TestCategory("Nightly"),
 TestCategory("Daily"), 
 TestCategory("ShoppingCart"), 
TestMethod()]
public Void BVTTest1()
{
}

[TestCategory("Nightly"),
 TestCategory("Daily"), 
 TestCategory("ShoppingCart"), 
TestMethod()]
public Void BVTTest2()
{
}

通过TestCategory

通过VSTest.Console.exe组运行测试
Vstest.console.exe myTestProject.dll /TestCaseFilter:”TestCategory=Nightly"

按测试类别

按MSTest.exe组运行测试
mstest /testcontainer:MyTestprojectName.dll /category:"Nightly"
mstest /testcontainer:MyTestprojectName.dll /category:"Daily"

请参阅MSDN Link以获取本主题中的更多命令行选项。