Копирование и клонирование наборов тестов и тестовых случаев

Есть несколько способов копировать наборы тестов и тестовые случаи при планировании тестов в Microsoft Visual Studio Team Foundation Server (TFS).

Важно понимать, что набор тестов или план тестирования содержит набор ссылок на тестовые случаи. Если удалить набор или тестовый случай из всех наборов, тестовый случай по-прежнему будет существовать как рабочий элемент в Team Foundation и его можно будет найти с помощью запроса.

Копирование и клонирование в Microsoft Test Manager

Все эти процедуры выполняются в Microsoft Test Manager. Откройте Центр тестирования и выберите пункты План и Содержимое. (Кроме того, можно выполнить клонирование из командной строки.)

Ссылка на одни тесты в разных наборах

Скопируйте и вставьте тестовые случаи, чтобы использовать одни и те же тесты в разных наборах и планах. Например, можно создать быстрый набор, который использует подмножество тестов из более всестороннего набора.

  1. Скопируйте тестовый случай, используя сочетание клавиш CTRL+C.

  2. Выберите другой набор или план и вставьте тестовый случай, используя сочетание клавиш CTRL+V.

    (Если не выбрать другой набор, при вставке ничего не произойдет, так как в каждом наборе может быть только одна ссылка на любой тестовый случай.)

Если изменить тестовый случай в одном наборе, изменения отобразятся для тестового случая в другом наборе.

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

Клонирование и редактирование тестового случая

Используйте эту процедуру, чтобы создать новый тестовый случай, аналогичный существующему.

  1. Щелкните тестовый случай правой кнопкой мыши и выберите пункт Создать копию.

    Правой кнопкой мыши щелкните тестовый случай и выберите пункт "Создать копию"

    Откроется новый тестовый случай.

  2. Измените новый тест. Нужно изменить по крайней мере название. В разделе Ссылки можно удалить ссылку на старый тестовый случай.

    Правой кнопкой мыши щелкните тестовый случай и выберите пункт "Создать копию"

Два теста можно редактировать последовательно и независимо друг от друга.

Копирование набора из другого плана или набора

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

Копирование наборов тестов

  1. Создайте план тестирования для нового спринта.

  2. Выберите набор назначения или план, а затем получите наборы, которые требуется скопировать.

    Копирование наборов тестов из другого плана тестирования

    Тестовый набор и любые содержащиеся в нем наборы копируются, однако содержат ссылки на одни и те же тестовые случаи. В исходном и целевом планах тестирования используются одни и те же тестовые случаи.

После копирования можно независимо добавлять в планы тестовые случаи или удалять их, но при редактировании общего тестового случая изменения коснутся обоих планов тестирования.

Клонирование плана тестирования и его тестовых случаев

Клонирование удобно, если вы хотите разделить приложение на две версии: после копирования тесты для обеих версий можно изменять независимо.

Клонирование наборов тестов

  1. В контекстном меню старого плана тестирования выберите команду Клонировать план.

  2. В диалоговом окне выберите наборы для копирования и задайте новую область и пути итерации.

    Клонирование плана тестирования

    Установите флажок Клонировать требования, чтобы создать новые пользовательские истории или требования, которые будут обслуживаться по отдельности. Например:

    • Если в конечном итоге планируется объединить две ветви приложения, нужно будет сохранить одни и те же требования для функций, которые уже реализованы и протестированы. Не устанавливайте флажок "Клонировать требования".

    • Если планируется разделить приложения на два похожих, но отдельных, может потребоваться изменить пользовательские истории одного приложения, не меняя их для другого. Установите флажок "Клонировать требования", чтобы создать независимый набор требований для новых тестовых случаев.

  3. Обновите наборы на основе запросов, которые вы скопировали, для использования новой области и путей итерации.

  4. Задайте сборку в конечном плане тестирования, если вы клонировали автоматические тестовые случаи.

Клонируемые объекты

При клонировании набора тестов из исходного плана тестирования в конечный план тестирования копируются следующие объекты.

Объект плана тестирования

Копируется

Примечания

Тестовый случай

Тема применяется

Все новые тестовые случаи сохраняют общие шаги.

Между исходным и новым тестовыми случаями создается ссылка.

У новых тестовых случаев нет тестовых запусков, ошибок, результатов тестов и сведений о сборке.

Общие шаги, на которые ссылаются клонированные тестовые случаи

Тема применяется

Набор тестов

Тема применяется

Сохраняются следующие данные:

  • имена и иерархическая структура наборов тестов;

  • порядок тестовых случаев;

  • назначенные тестировщики;

  • Конфигурации

Записи действий, на которые есть ссылки из клонированного тестового случая

Тема применяется

Ссылки и вложения

Тема применяется

Конфигурация теста

Тема применяется

Конфигурация теста применяется к конечному плану тестирования.

Параметры тестирования

Тема не применяется

Применяются параметры тестирования конечного плана тестирования.

Результаты испытаний

Тема не применяется

Тестовые запуски и сеансы произвольного тестирования

Тема не применяется

Поскольку тестовые запуски применимы только к исходному плану тестирования, они не копируются.

Наборы, основанные на требованиях

Тема не применяется

Без /clonerequirements

Наборы тестов, основанные на требованиях, преобразуются в статические наборы тестов в конечном плане тестирования. Этот набор статических тестов будет ссылаться на клонированные тестовые случаи.

Клонированные тестовые случаи не содержат ссылки на исходные рабочие элементы требований.

Наборы, основанные на требованиях

Тема применяется

С /clonerequirements

Копируются и связываются с новой копией рабочего элемента требования.

Рабочие элементы требований (элементы невыполненной работы по продукту или пользовательские истории)

С /clonerequirements

Рабочие элементы требований, связанные с клонируемым набором, основанным на требованиях, клонируются.

Рабочие элементы ошибок

С /clonerequirements

С /clonerequirements

Клонируются в командном проекте, использующем шаблон процесса Scrum, а также в других проектах, в которых тип рабочего элемента "Ошибка" находится в категории рабочих элементов "Требования".

В других проектах ошибки не клонируются.

Пример набора тестов, клонированного с помощью tcm.exe

Исходный план тестирования

Исходный план тестирования

Конечный план тестирования

План тестирования назначения

Клонирование наборов тестов с помощью командной строки

Tcm.exe можно использовать для копирования тестовых наборов. Откройте окно командной строки и измените каталог на %VS110COMNTOOLS%..\IDE.

Откройте командную строку разработчика. Можно использовать стандартную командную строку, но нужно перейти в каталог %VS110COMNTOOLS%..\IDE. Используйте команду tcm.exe:

cd %VS110COMNTOOLS%..\IDE

tcm suites /clone     
   /collection:https://Server:8080/tfs/Collection 
   /teamproject:"TeamProject"
   [/destinationteamproject: "DestinationProject"]
   /suiteid:sourceId 
   /destinationsuiteid:targetId 
   [/clonerequirements] 
   [/overridefield:"field name"="new value"] [/overridefield:"field 2"="value 2" ...]] 

Параметры:

  • Server, Collection, TeamProject: имена сервера Team Foundation Server, коллекции командных проектов и командного проекта.

  • destinationTeamProject: этот параметр используется, если конечный набор тестов находится в другом командном проекте. Он должен находиться в той же коллекции командных проектов. Необходимо задать значения переопределения полей "Iteration Path" и "Area Path".

  • suiteId и destinationSuiteId: идентификатор набора, который необходимо скопировать, и идентификатор набора, в который добавляется новая копия. Чтобы скопировать весь план тестирования, следует использовать идентификатор набора в корне плана тестирования.

    Идентификатор набора отображается в области сведений, когда набор выбран в плане тестирования.

    Список наборов можно посмотреть с помощью команды tcm suites /list.

  • /clonerequirements: клонирование рабочих элементов требований, присоединенных к наборам тестов, основанных на требованиях. Если этот параметр опущен, наборы тестов, основанные на требованиях, преобразуются в статические наборы.

  • /overridefield:"field name"="new value": изменение значения поля в каждом клонированном рабочем элементе. Этот параметр можно использовать несколько раз, чтобы изменить необходимое количество полей.

Примеры

tcm suites /clone /collection:http://tfs.fabrikam.com:8080/tfs/DefaultCollection
   /teamproject:IceCream /destinationteamproject:ToyStore
   /clonerequirements
   /suiteid:234 /destinationsuiteid:567 
   /overridefield:"Iteration Path"="ToyStore\sprint3"
   /overridefield:"Area Path"="ToyStore\catalog"