如何将测试方法与测试用例相关联?

时间:2017-06-16 06:01:17

标签: visual-studio unit-testing azure-devops visual-studio-2017

我无法将测试方法与测试资源管理器中的测试用例(“与测试用例关联”选项显示为灰色)或通过MTM或VSTS网站关联。我根本找不到将测试与自动化测试的测试用例相关联的方法。

我正在使用.NET核心应用1.1,使用MSTest的ASP.NET(虽然我也尝试过Xunit,但无济于事)。即使是总是通过的基本测试用例也无法关联。

在MTM中,我创建了一个将自动化状态设置为“计划”的测试计划。

在VSTS中,我有一个使用Git存储库的项目,我在其中创建了一个CI构建,可以成功发现,运行和报告测试。

我无法找到将这些特定测试与测试运行相关联的位置。我怎么能做到这一点?

1 个答案:

答案 0 :(得分:3)

请参阅以下步骤将测试方法与测试用例相关联:

  1. 安装MTM 2017(运行VS 2017安装应用程序(vs_Enterprise.exe)>修改)
  2. enter image description here

    1. 打开VS 2017>工具>选项>工作项>一般>在以下位置选择Open Studio(兼容模式)以打开工作项:
    2. enter image description here

      1. 在VS 2017中打开测试项目并构建
      2. 打开团队资源管理器并连接到您的团队项目
      3. 在“搜索工作项”框中键入测试用例ID>按Enter键打开测试用例
      4. 选择Associated Automation选项卡,然后单击...
      5. 选择测试方法>行
      6. 保存测试用例工作项
      7. 另一种方法是,您可以通过更新字段REST API将测试方法与测试用例相关联。

        例如:

        PATCH https://[account].visualstudio.com/DefaultCollection/_apis/wit/workitems/[testcaseid]?api-version=1.0

        内容类型:application/json-patch+json

        体:

        [
          {
            "op": "add",
            "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestName",
            "value": "[namespace.classname.methodname (e.g. UnitTestProject1.UnitTest1.TestMethod2)]"
          },
          {
            "op": "add",
            "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestStorage",
            "value": "[assembly name(e.g. unittestproject1.dll)"
          },
          {
            "op": "add",
            "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestId",
            "value": "[guid id]"
          },
          {
            "op": "add",
            "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestType",
            "value": "Unit Test"
          },
           {
            "op": "add",
            "path": "/fields/Microsoft.VSTS.TCM.AutomationStatus",
            "value": "Automated"
          }
        ]
        

        AutomatedTestId是Guid值,因此您可以使用此C#代码生成新的Guid:

        Guid g = Guid.NewGuid();
        string s = g.ToString();