VS 2010 Coded UI Test - Запустите ссылочное приложение - PullRequest
22 голосов
/ 06 мая 2010

Я использую кодированные тесты пользовательского интерфейса Visuial Studio для запуска автоматических тестов пользовательского интерфейса в приложении WPF каждый раз, когда сборка выполняется на моем сервере TFS. Проблема, с которой я сталкиваюсь, заключается в динамическом запуске исполняемого файла на основе пути, по которому он был только что собран, включая конфигурацию (x86, x64).

Есть ли способ получить путь к исполняемому файлу в указанном проекте, чтобы я мог динамически запустить приложение из моего тестового проекта?

Ответы [ 3 ]

24 голосов
/ 07 мая 2010

MSTest:

  1. Откройте файл .testsettings и отметьте «Включить развертывание» в разделе развертывания.
  2. В тестовом проекте щелкните правой кнопкой мыши и выберите «Добавить существующий элемент».
  3. Перейдите в папку сборки приложения для тестирования.
  4. Найдите исполняемый файл и выберите «Добавить как ссылку» (убедитесь, что вы включили все зависимые от ваших приложений библиотеки DLL, если они еще не включенына который ссылается ваш тестовый проект.)
  5. Щелкните правой кнопкой мыши ссылку на исполняемый файл и выберите «Копировать всегда» (при этом будет скопирована новая версия .exe в каталог тестового бина при его сборке)
  6. В вашем [TestInitialize] добавьте следующее для запуска вашего приложения:

    _yourApp = ApplicationUnderTest.Launch(Path.Combine(Directory.GetCurrentDirectory(), "yourexecutablename.exe"));
  7. В вашем [TestCleanup] добавьте следующее:

    _yourApp.Close();

NUnit: (вам нужно будет сослаться и использовать Microsoft.VisualStudio.TestTools.UITesting)

  1. В своем тестовом проекте щелкните правой кнопкой мыши и выберите Добавить существующий элемент.
  2. Найдите расположение сборки yнаше приложение для тестирования.
  3. Найдите свой исполняемый файл и выберите «Добавить как ссылку» (убедитесь, что вы либо включили все зависимые от ваших приложений библиотеки DLL, если они еще не указаны в вашем тестовом проекте.)
  4. Щелкните правой кнопкой мыши ссылку на исполняемый файл и выберите «Копировать всегда» (при этом будет скопирована новая версия .exe в каталог вашего тестового бина при его сборке)
  5. В вашем [Setup] добавленииЧтобы запустить ваше приложение, выполните следующие действия:

    _yourApp = ApplicationUnderTest.Launch("yourexecutablename.exe"));
  6. В своем [Teardown] добавьте следующее:

    _yourApp.Close();

Примечание: Iне проверили реализацию NUnit

4 голосов
/ 15 февраля 2013

Как писал Зиан Чой, используя шаги, предоставленные Адамом, тестируемое приложение не копируется в каталог ... / Out. У меня сработали следующие дополнительные шаги:

  1. Откройте файл .testsettings и отметьте «Включить развертывание» в разделе «Развертывание».
  2. Добавьте тестируемые двоичные файлы с помощью «Добавить каталог ...», например, "\ AppUnderTest \ Bin \ Debug"
1 голос
/ 20 октября 2016

В течение некоторого времени я пытался понять, как сказать моему проекту CodedUI, откуда запускать исполняемый файл и как это сделать «правильно», поэтому он работает автоматически, когда разные пользователи запускают код в разных рабочих пространствах. на разных хостах и ​​т. д. Я придумал скопировать исполняемый файл в общий каталог (шаг в правильном направлении), а затем записать действие, чтобы запустить его оттуда (помощь по диапазону, так что, по крайней мере, он работает для разных пользователей на одном и том же хостов).

Вот шаги из ваших инструкций MSTest, адаптированных для MS Visual Studio 2015 Enterprise IDE. К сожалению, мне не хватает «очков репутации», чтобы иметь возможность вставлять снимки экрана -

  1. В среде MS Visual Studio IDE в обозревателе решений щелкните проект CodedUI, чтобы выделить его, щелкните правой кнопкой мыши, выберите «Добавить», выберите «Существующий элемент»
  2. В диалоговом окне «Добавить существующий элемент» перейдите к исполняемому файлу, который вы хотите протестировать в своем проекте CodedUI. Нажмите на файл, чтобы выделить его, затем найдите раскрывающийся список «Добавить» в диалоговом окне и выберите «Добавить как ссылку», нажмите OK
  3. Вернитесь в Solution Explorer, снова нажмите на проект CodedUI и разверните его. Теперь вы должны увидеть значок .exe в списке проекта CodedUI
  4. Щелкните правой кнопкой мыши значок .exe и выберите «Свойства»
  5. В окне «Свойства» установите BuildAction на «Содержимое» и «Копировать в каталог вывода». Копировать всегда

Вуаля !!!

...