Как запустить тесты MTM для нескольких сборок продукта?

У нас есть тесты MTM, запущенные в выпуске сборки нашего продукта (настольное приложение). Теперь мы хотим, чтобы одни и те же тесты выполнялись для двух сборок продукта: Beta и Release.

Когда тестовый прогон инициируется из MTM (или tcm), нам нужен способ передать тестовому прогону «значение», указывающее, какую версию/сборку продукта необходимо протестировать. Затем это «значение» будет прочитано в методе тестирования, и во время выполнения тестов будет принято правильное решение (например, путь установки, обновления файла результатов теста и т. д.).

Есть ли способ добиться этого? в ТФС или МТМ?


person userhpkj    schedule 20.11.2014    source источник
comment
Не уверен, что правильно понял, что вы хотите сделать. Вы в настоящее время начинаете свой тест с MTM, верно? Вы хотите развернуть/установить обе версии вашего продукта (бета-версию и выпуск) в одной среде, используя разные пути установки, верно? Что именно вы имеете в виду под параллельно? Вы хотите начать свои тесты с MTM и что именно вы хотите, чтобы потом произошло?   -  person Elena    schedule 21.11.2014
comment
Да, мы начинаем тесты с MTM. Иногда нам нужно протестировать бета-версию, а иногда мы хотим протестировать выпускную сборку в той же среде. Итак, запуская выполнение теста из MTM, мы хотим указать, что мы хотим запустить тесты на бета-сборке (или сборке выпуска), и на основе этого наш тест CodedUI установит правильную сборку продукта. Надеюсь, теперь я ясно выразился.   -  person userhpkj    schedule 21.11.2014


Ответы (4)


Мы также столкнулись с подобной проблемой в нашем проекте. Мы решили изменить шаблон определения сборки, чтобы использовать тип сборки продукта (бета-версия, окончательная первоначальная версия или выпуск) в качестве входного параметра. Используя это значение во время сборки TFS, мы можем либо обновить имя сборки TFS, чтобы отразить тип сборки продукта, либо создать файл (xml) как часть процесса сборки TFS, чтобы содержать сведения об этом типе.

Подробнее о том, как добавить аргументы и параметры в определение сборки, см. здесь: http://www.ewaldhofman.nl/post/2010/04/27/Customize-Team-Build-2010-e28093-Part-2-Add-arguments-and-variables.aspx

person digitguy    schedule 06.04.2015

Рассмотрите возможность использования Настройки тестирования.

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

В разделе «Дополнительно» Настройки теста вы можете указать сценарии для запуска в вашей среде перед запуском тестов.

  1. Создайте два сценария, один для выпуска и один для бета-версии. Эти сценарии могут создать файл с определенным содержимым, установить переменную среды или сделать что-то еще, что затем может быть проверено вашим тестом во время его выполнения.
  2. Создайте две тестовые настройки, одну для выпуска и одну для бета-версии, и настройте соответствующий скрипт для запуска для каждой тестовой настройки.
  3. Используйте одну из этих настроек тестирования при запуске тестов.

Таким образом, вы можете передать информацию в свой тест.

person Elena    schedule 24.11.2014
comment
Спасибо, Елена. Я также придумал такое же решение и, следовательно, я задал этот вопрос, при этом Я хочу передать аргументы сценарию установки. До сих пор у меня нет на это ответа. - person userhpkj; 25.11.2014

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

http://blogs.infosupport.com/switching-browser-in-codedui-or-selenium-tests-based-on-mtm-configuration/

один вопрос: вы используете поток Build-Deploy-Test для установки продукта в среде или делаете это каким-либо другим способом?

person Sudarsan    schedule 22.11.2014
comment
Есть ли какая-нибудь полезная информация, которую вы можете извлечь из ссылки и поместить в тело поста? Отказ от ответов, основанных на ссылках, поможет нам гарантировать, что когда ссылка больше не будет доступна, ответ по-прежнему будет полезен. - person Kevin Brown; 22.11.2014
comment
Что сказал @KevinBrown. Кроме того, пожалуйста, это не слово. - person John Saunders; 22.11.2014
comment
@sudarsan Использование переменных среды или конфигурации в моем случае не очень хорошая идея. Что мне нужно, так это способ передать значение тестовому прогону (инициированному либо из MTM, либо из tcm), чтобы сообщить ему, на какой версии продукта ему нужно работать, а затем я обработаю это значение в методах тестирования. - person userhpkj; 22.11.2014

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

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

Вместо этого вы можете настроить свои тесты для запуска из инструмента управления релизами. Затем вы сможете настроить среду так, как вам нравится, на основе переданных veriables.

http://nakedalm.com/execute-tests-release-management-visual-studio-2013/

person MrHinsh - Martin Hinshelwood    schedule 24.11.2014
comment
Извините, я не понял вашего предложения: Итак, если ваша конфигурация представляет собой код, как и должно быть, вы можете настроить ее на автоматическую.. Не могли бы вы уточнить? - person userhpkj; 24.11.2014
comment
Вся ваша конфигурация и сценарии должны храниться в системе управления версиями вместе с вашим продуктом: Конфигурация как код. - person MrHinsh - Martin Hinshelwood; 25.11.2014