Не удается запустить тесты, взаимодействующие с рабочим столом

Я загрузил и установил на Windows Server 2016 тестовый агент vs, который был установлен с помощью инструмента под названием Test Agent Configuration Tool. Затем я подписался на это руководство для настройки агента для запуска тестов, которые взаимодействуют с рабочим столом. Я хочу запускать тесты CodedUI для веб-проектов из своего конвейера выпуска.

Это выходные данные средства настройки тестового агента введите здесь описание изображения

Когда я запускаю свой конвейер выпуска, я получаю эту ошибку на этапе тестирования:

Ошибка при вызове метода инициализации для тестового класса Captura.PDV.Web.Test.CodedUI.CodedUITest1: Microsoft.VisualStudio.TestTools.UITest.Extension.UITestException: для запуска тестов, взаимодействующих с рабочим столом, необходимо настроить агент тестирования для запуска от имени интерактивный процесс. Дополнительные сведения см. в разделе «Как настроить агент тестирования для запуска тестов, взаимодействующих с рабочим столом» (https://go.microsoft.com/fwlink/?LinkId=255012)

Если вы запускаете тесты как часть сборки команды, вы также должны настроить агент сборки для запуска в качестве интерактивного процесса. Дополнительные сведения см. в разделе «Как настроить и запустить запланированные тесты после создания приложения» (https://go.microsoft.com/fwlink/?LinkId=254735)

Вот моя конфигурация тестового задания:

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

Некоторые замечания и вопросы:

  • Я могу успешно запускать тесты, вызывая vstest.console.exe вручную с сервера.
  • Мой конвейер выпуска работает на VSTS
  • Я не использую Microsoft Test Manager. Действительно ли это необходимо?
  • Нужно ли мне настраивать среду тестовой лаборатории?
  • Нужно ли иметь контроллер для агента?

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




Ответы (1)


Вы запутались между старым способом ведения дел и новым способом.

  • Вам не нужно использовать MTM — MTM устарела.
  • Вам не нужно настраивать лабораторную среду. Лабораторные среды устарели.
  • Вам не нужны специальные тестовые контроллеры или агенты.

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

  1. Настройте агент сборки/выпуска, который работает в интерактивном режиме. .
  2. Запустите тесты на этом агенте с помощью задачи «Тестирование» Visual Studio с установленным флажком «Тестовый микс содержит тесты пользовательского интерфейса».

Вот и все.

Я бы также рекомендовал против использовать закодированный пользовательский интерфейс и вместо этого использовать Selenium (или Appium для настольных приложений); Microsoft больше не инвестирует в платформу Coded UI и рекомендует использовать Selenium в качестве альтернативы.

person Daniel Mann    schedule 26.07.2018
comment
Я загрузил агент из https://{your_organization}.visualstudio.com/_admin/_AgentPool и установил его на свой компьютер (попробовал запустить сеанс для агента во время входа в систему, а также запустить его вручную с помощью .\run.cmd), и я получил ту же ошибку, говорящую мне, что агент должен быть в интерактивном режиме. После настройки задачи для запуска с тестовым миксом, содержащим тесты пользовательского интерфейса, я также получаю это: 2018-07-26T20:06:15.4361906Z ##[error]Unhandled: Unexpected end of JSON input 2018-07-26T20:06:15.4372741Z ##[error]Unhandled: Command failed: cscript.exe //Nologo C:\vstsagent\A1\_work\_tasks\VS.. - person Bruno Casarotti; 26.07.2018
comment
Microsoft больше не инвестирует в закодированный пользовательский интерфейс какие-либо источники для этого? Мне нужно обосновать это здесь, в моей компании, это было бы полезно - person Bruno Casarotti; 27.07.2018
comment
@BrunoCasarotti, выбор между закодированным пользовательским интерфейсом и Selenium не так однозначен, как предполагают приведенные выше слова Дэниела. Я рекомендую внимательно прочитать блог Microsoft, чтобы увидеть, как это может повлиять на ваши потребности. - person AdrianHHH; 29.07.2018
comment
@AdrianHHH, не могли бы вы указать на эти статьи из блога Microsoft? Любые рекомендации? Из сообщения в блоге, которое отправил Дэниел, я ясно вижу преимущество перехода с закодированного пользовательского интерфейса на Selenium или любой другой инструмент, более совместимый с технологией WebDrive. Сейчас я начинаю внедрять функциональные тесты в своем решении, поэтому сейчас самое время переключиться, если это необходимо. Вы бы порекомендовали мне остаться с Coded UI, зная об этом? Если да, то почему? - person Bruno Casarotti; 31.07.2018
comment
@BrunoCasarotti Я не понимаю, о чем ты спрашиваешь. Я думал, что блог Microsoft понятен, и я рекомендовал вам внимательно прочитать его. Какие еще статьи вы имеете в виду? - person AdrianHHH; 31.07.2018