добавить новое настраиваемое поле в шаблон тестовых случаев в TFS 2017

Я только что установил TFS 2017, чтобы использовать Microsoft Test Manager для создания тестовых случаев. Видя, что мы создаем пользовательскую историю отдельно, я хочу добавить в тестовые примеры новое поле под названием «Идентификатор пользовательской истории».

Я собирался добавить новое настраиваемое поле с помощью этого руководства: https://www.visualstudio.com/en-us/docs/work/customize/add-modify-field

В нескольких мирах я сделал следующие шаги:

  1. #P4# <блочная цитата> #P5#
  2. Добавьте элемент FIELD, указывающий имя добавляемого настраиваемого поля. Необходимо указать следующие обязательные атрибуты: понятное имя, refname (ссылочное имя) и тип. Дополнительные сведения см. в справочнике по элементу FIELD (определение).

  3. Добавьте элемент Control в раздел FORM, чтобы настраиваемое поле отображалось в форме в группе элементов, где вы хотите, чтобы оно отображалось.

  4. #P8# <блочная цитата> #P9#

Прежде чем опубликовать то, что я сделал, я просто хочу сообщить вам, что каждый раз, когда я экспортирую и ничего не редактирую, я пытаюсь снова импортировать свой файл, я получаю это сообщение об ошибке:

введите здесь описание изображения

и это та же ошибка, которую я получаю, когда вношу изменения в файл, поэтому я действительно не знаю, что мне нужно делать...

Это строки, которые я добавил (я ДОБАВИЛ ТОЛЬКО 2 СТРОКИ И Я ПОСТАВИЛ КОММЕНТАРИЙ «СТРОКА, КОТОРУЮ Я ТОЛЬКО ДОБАВИЛ» И ПРОБЕЛЫ, ЧТОБЫ ПОНЯТЬ, КАКОЙ ОДИН ЯВЛЯЕТСЯ):

<?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>

проблема в том, что и в этом случае, когда я пытаюсь повторно загрузить файл, я каждый раз получаю одно и то же сообщение об ошибке.


person Carlo 1585    schedule 09.02.2017    source источник
comment
Вы можете связать тестовые примеры с пользовательскими историями. Почему этого недостаточно?   -  person Daniel Mann    schedule 09.02.2017
comment
Привет @DanielMann, не для меня, потому что на данный момент у нас уже есть все пользовательские истории в точке обмена, и для быстрой ссылки мы хотели бы иметь дополнительное поле .... у нас недостаточно времени, чтобы скопировать все история пользователя, и у нас нет интегрированных точек обмена и tfs   -  person Carlo 1585    schedule 10.02.2017
comment
@Carlo1585 Какую версию witadmin вы используете? Какой путь к witadmin?   -  person Matthew Manela    schedule 12.02.2017
comment
@MatthewManela путь, который я использую, следующий: C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE, поэтому версия 12, потому что я использую Visual Studio 2013. Нужно ли загружать Visual Studio 2017?   -  person Carlo 1585    schedule 13.02.2017
comment
Вы можете загрузить и установить TFS Power Tool, что упростит процесс добавления поля. TFS Power Tool предоставляет пользовательский интерфейс для добавления полей. Вы можете проверить этот инструмент и следить за этим блогом: blog.infostructure.co.nz/2013/05/. Я только что проверил на своем VS 2015 и powertool 2015, все сработало.   -  person Cece Dong - MSFT    schedule 13.02.2017
comment
@Cece-MSFT есть ли инструмент TFS Power Tool для TFS 2017? Потому что я читал, что еще не вышла версия 2017 года!   -  person Carlo 1585    schedule 13.02.2017
comment
@Carlo1585, версия PowerTools должна соответствовать версии VS, а не TFS.   -  person Cece Dong - MSFT    schedule 14.02.2017
comment
@Carlo1585 Вы ​​используете слишком старую версию Witadmin. Как правило, для операций процесса необходимо использовать ту же версию, что и сервер, чтобы обеспечить надлежащую совместимость.   -  person Matthew Manela    schedule 15.02.2017
comment
Большое спасибо всем, ребята, я смог решить проблему, теперь я пытаюсь создать динамическое поле, но у меня ничего не получается, я сделал еще один пост;) но большое спасибо за вашу помощь: D   -  person Carlo 1585    schedule 15.02.2017


Ответы (1)


Повторите шаг 4 с установленным VisualStudio 2015, используя командную строку разработчика для VS2015. VisualStudio 2013 не знает элемент и поэтому проверяет его с ошибкой.

Я сделал то же самое без PowerTools, просто установил VisualStudio 2015 Update 3 - работает как шарм.

Или дождитесь VisualStudio 2017, который должен выйти в начале марта. Я не рекомендую устанавливать VisualStudio 2017 RC — это сломало мою установку VisualStudio 2013.

person phifi    schedule 14.02.2017
comment
сделано с Visual Studio 2015 Update 3 и мощным инструментом для Visual Studio 2015;) так много - person Carlo 1585; 15.02.2017