在TFS 2017中为测试用例模板添加新的自定义字段

时间:2017-02-09 14:27:24

标签: tfs custom-fields mtm tfs2017

我刚刚安装了TFS 2017以使用Microsoft Test Manager来创建测试用例。 看到我们分别创建用户故事,我想在测试用例中添加一个名为“用户故事ID”的新字段。

我打算使用本指南添加新的自定义字段: https://www.visualstudio.com/en-us/docs/work/customize/add-modify-field

在一些世界中我做了这个步骤:

  1. 导出WIT定义(我指定项目测试用例)。

      

    witadmin exportwitd / collection:CollectionURL / p:ProjectName   / n:“测试用例”/ f:“DirectoryPath / FileName.xml

  2. 添加指定自定义字段名称的FIELD元素     加。您必须指定以下必需属性:友好     name,refname(引用名称)和类型。有关更多信息,请参阅     FIELD(定义)元素参考。

  3. 在FORM部分中添加Control元素以便自定义 字段显示在您所在元素组中的表单上 希望它出现。

  4. 导入WIT定义文件。

      

    witadmin importwitd / collection:CollectionURL / p:ProjectName   /f:"DirectoryPath/FileName.xml“

  5. 在发布我做的之前我想让你知道每次我导出而没有编辑任何东西我尝试再次导入我的文件时收到此错误信息:

    enter image description here

    这是我在对文件进行更改时收到的错误,所以我真的不知道自己要做什么......

    这是我添加的行(我添加了2条线,我发表评论“我刚刚添加的线路”和SPACS让我们理解其中的一条):

    <?xml version="1.0" encoding="utf-8"?>
    <witd:WITD application="Work item type editor" version="1.0" xmlns:witd="http://schemas.microsoft.com/VisualStudio/2008/workitemtracking/typedef">
      <WORKITEMTYPE name="Test Case">
        <DESCRIPTION>Server-side data for a set of steps to be tested.</DESCRIPTION>
        <FIELDS>
    
          /*THE LINE THAT I JUST ADDED*/
          <FIELD name="User Story ID" refname="TradeHub.TradeHubTestTeam.UserStoryID" type="String" />
    
          <FIELD name="Iteration ID" refname="System.IterationId" type="Integer" />
          <FIELD name="External Link Count" refname="System.ExternalLinkCount" type="Integer" />
          ...........
          ...........
        </FIELDS>
        <WORKFLOW>
          ...........
          ...........
        </WORKFLOW>
        <FORM>
          <Layout HideControlBorders="true">
            <Group Margin="(4,0,0,0)">
              <Column PercentWidth="90">
                <Control FieldName="System.Title" Type="FieldControl" ControlFontSize="large" EmptyText="&lt;Enter title here&gt;" />
              </Column>
              <Column PercentWidth="10">
                <Control FieldName="System.ID" Type="FieldControl" ControlFontSize="large" />
              </Column>
            </Group>
            <Group Margin="(10,0,0,0)">
              <Column PercentWidth="50">
                <Group Label="Status">
                  <Column PercentWidth="100">
                    <Control FieldName="System.AssignedTo" EmptyText="&lt;No one&gt;" Type="FieldControl" Label="Assi&amp;gned To" LabelPosition="Left" />
                    <Control FieldName="System.State" Type="FieldControl" Label="Stat&amp;e" LabelPosition="Left" />
    
                    /*THE LINE THAT I JUST ADDED*/
                    <Control FieldName="TradeHub.TradeHubTestTeam.UserStoryID" Type="FieldControl" Label="User Story ID" LabelPosition="Left" />
    
                    <Control FieldName="Microsoft.VSTS.Common.Priority" Type="FieldControl" Label="Priority" LabelPosition="Left" />
                    <Control FieldName="Microsoft.VSTS.TCM.AutomationStatus" Type="FieldControl" Label="Automation status" LabelPosition="Left" />
                  </Column>
                </Group>
              </Column>
              <Column PercentWidth="50">
                <Group Label="Classification">
                  <Column PercentWidth="100">
                    <Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="&amp;Area" LabelPosition="Left" />
                    <Control FieldName="System.IterationPath" Type="WorkItemClassificationControl" Label="Ite&amp;ration" LabelPosition="Left" />
                  </Column>
                </Group>
              </Column>
            </Group>
            <TabGroup>
              <Tab Label="Steps">
                <Control FieldName="Microsoft.VSTS.TCM.Steps" Type="TestStepsControl" LabelPosition="Top" Dock="Fill" />
              </Tab>
              <Tab Label="Summary">
                <Group>
                  <Column PercentWidth="50">
                    <Control FieldName="System.Description" Type="HtmlFieldControl" Label="Description" LabelPosition="Top" Dock="Fill" />
                  </Column>
                  <Column PercentWidth="50">
                    <Control FieldName="System.History" Type="WorkItemLogControl" Label="Histor&amp;y" LabelPosition="Top" Dock="Fill" />
                  </Column>
                </Group>
              </Tab>
              <Tab Label="Tested User Stories">
                <Control Type="LinksControl" Name="Tested">
                  <LinksControlOptions>
                    <WorkItemLinkFilters FilterType="include">
                      <Filter LinkType="Microsoft.VSTS.Common.TestedBy" FilterOn="reversename" />
                    </WorkItemLinkFilters>
                    <WorkItemTypeFilters FilterType="include">
                      <Filter WorkItemType="User Story" />
                    </WorkItemTypeFilters>
                    <ExternalLinkFilters FilterType="excludeAll" />
                    <LinkColumns>
                      <LinkColumn RefName="System.ID" />
                      <LinkColumn RefName="System.WorkItemType" />
                      <LinkColumn RefName="System.Title" />
                      <LinkColumn RefName="System.AssignedTo" />
                      <LinkColumn RefName="System.State" />
                      <LinkColumn LinkAttribute="System.Links.Comment" />
                    </LinkColumns>
                  </LinksControlOptions>
                </Control>
              </Tab>
              <Tab Label="All Links">
                <Control Type="LinksControl" Name="GeneralLinks">
                  <LinksControlOptions>
                    <LinkColumns>
                      <LinkColumn RefName="System.ID" />
                      <LinkColumn RefName="System.WorkItemType" />
                      <LinkColumn RefName="System.Title" />
                      <LinkColumn RefName="System.AssignedTo" />
                      <LinkColumn RefName="System.State" />
                      <LinkColumn LinkAttribute="System.Links.Comment" />
                    </LinkColumns>
                  </LinksControlOptions>
                </Control>
              </Tab>
              <Tab Label="Attachments">
                <Control Type="AttachmentsControl" LabelPosition="Top" />
              </Tab>
              <Tab Label="Associated Automation">
                <Control Type="AssociatedAutomationControl" LabelPosition="Top" Dock="Fill" />
              </Tab>
            </TabGroup>
          </Layout>
        </FORM>
      </WORKITEMTYPE>
    </witd:WITD>
    

    问题是,在这种情况下,当我尝试重新上传文件时,我每次都会收到相同的错误消息。

1 个答案:

答案 0 :(得分:1)

使用VS2015的开发人员命令提示符,安装VisualStudio 2015重复步骤4。 VisualStudio 2013不知道该元素,因此会出现错误验证。

我在没有PowerTools的情况下做了同样的事情,只安装了VisualStudio 2015 Update 3 - 就像魅力一样。

或者等待VisualStudio 2017,它应该在3月初发布。我不建议安装VisualStudio 2017 RC - 它破坏了我的VisualStudio 2013安装。