Подтвердить что ты не робот

VS 2010 Coded UI Test - запуск ссылки

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

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

4b9b3361

Ответ 1

MSTest:

  • Откройте файл .testsettings и установите флажок "Включить развертывание" в разделе развертывания.
  • В тестовом проекте щелкните правой кнопкой мыши и выберите Добавить существующий элемент.
  • Просмотрите место сборки вашего приложения для тестирования.
  • Найдите свой исполняемый файл и выберите "Добавить как ссылку" (убедитесь, что вы либо включили все зависимые от приложений DLL, если они еще не указаны вашим тестовым проектом.)
  • Щелкните правой кнопкой мыши ссылку на исполняемый файл и выберите "Копировать всегда" (это скопирует новую версию .exe в каталог bin для тестов, когда она будет создана).
  • В своем [TestInitialize] добавьте следующее для запуска приложения:

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

    _yourApp.Close();

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

  • В тестовом проекте щелкните правой кнопкой мыши и выберите Добавить существующий элемент.
  • Просмотрите место сборки вашего приложения для тестирования.
  • Найдите свой исполняемый файл и выберите "Добавить в качестве ссылки" (убедитесь, что вы включили все ваши приложения в зависимости от DLL, если они еще не ссылаются на ваш тестовый проект.)
  • Щелкните правой кнопкой мыши ссылку на исполняемый файл и выберите "Копировать всегда" (это скопирует новую версию .exe в каталог bin для тестов, когда она будет создана).
  • В своем [Setup] добавьте следующее для запуска приложения:

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

    _yourApp.Close();

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

Ответ 2

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

  • Откройте файл .testsettings и установите флажок "Включить развертывание" в разделе "Развертывание".
  • Добавьте свои тестируемые файлы через "Добавить каталог...", например. "\ AppUnderTest\Bin\Debug"

Ответ 3

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

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

  • Внутри среды разработки MS Visual Studio в обозревателе решений щелкните по проекту CodedUI, чтобы выделить его, щелкните правой кнопкой мыши, выберите "Добавить", выберите "Существующий элемент"
  • В диалоговом окне "Добавить существующий элемент" перейдите к исполняемому файлу, который вы хотите протестировать в проекте CodedUI. Нажмите на файл, чтобы выделить его, затем найдите раскрывающийся список "Добавить" в диалоговом окне и выберите "Добавить как ссылку", нажмите "ОК"
  • Вернитесь в Обозреватель решений, снова нажмите на проект CodedUI и разверните его. Теперь вы должны увидеть значок .exe, указанный внутри проекта CodedUI.
  • Щелкните правой кнопкой мыши значок .exe и выберите "Свойства"
  • В окне "Свойства" установите "BuildAction" в "Содержимое" и "Копировать в каталог вывода".

Вуаля!!!