Кодированный пользовательский интерфейс автоматизированного теста через щупальца осьминога

Я пытаюсь запустить свои автоматизированные тестовые наборы, развернутые на виртуальной машине, и пытаюсь запустить ее с помощью инструмента развертывания Octopus. Я установил тестовый агент и Octopus Tentacle на своей машине. Octopus очень хорошо запускает библиотеки DLL для автоматизированных тестовых случаев. Но в то время как Octopus пытается запустить тестовые случаи, он выдает ошибку, как показано ниже:-

Microsoft.VisualStudio.TestTools.UITest.Extension.UITestException: To run tests that interact with the desktop, you must set up the test agent to run as an interactive process. For more information, see "How to: Set Up Your Test Agent to Run Tests That Interact with the Desktop" (http://go.microsoft.com/fwlink/?LinkId=255012)
Error    01:59:38
If you are running the tests as part of your team build, you must also set up the build agent to run as an interactive process. For more information, see "How to: Configure and Run Scheduled Tests After Building Your Application" (http://go.microsoft.com/fwlink/?LinkId=254735)

Я установил свой пароль в тестовом агенте и установил его как интерактивный процесс, но все еще сталкиваюсь с той же проблемой.

Я запускаю мои DLL, как показано ниже, через Octopus.

 & "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" "C:\MyWebaPP\Automated_test\Automated_test.dll"

Я пробовал каждый найденный способ. Пожалуйста, помогите мне в этом.

Заранее спасибо!!

1 ответ

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

Во время нашего исследования мы нашли этот пост на форуме поддержки Octopus: http://help.octopusdeploy.com/discussions/questions/5080-tentacle-running-interactive-tests Мы также связались с Octopus Deploy по почте, и они по сути дали нам тот же ответ.

Хотя нам не повезло с подходом "запланированное задание для тестового запуска", в конечном итоге нам удалось заставить его работать, запустив Octopus Tentacle как процесс, а не как службу.

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

Окончательное рабочее решение состояло в том, чтобы наметить задачу, которая запустит Octopus Tentacle как интерактивный процесс всякий раз, когда машина загружается (т.е. запускается Tentacle.exe напрямую), а затем убедитесь, что мы никогда не RDP к этой машине. Убедитесь, что у задачи есть достаточные привилегии и что она "запускается независимо от того, вошел пользователь в систему или нет". Также не забудьте отключить автоматический запуск службы Octopus Tentacle.

Изменить: У нас были некоторые проблемы, заставляющие это решение работать во всех наших средах. Похоже, что по соображениям безопасности новые версии Windows весьма скептически относятся к разрешению запланированных задач запускать интерактивные процессы, когда пользователь не вошел в систему.

Мы провели еще один поиск возможных решений и наткнулись на FireDaemon Pro (коммерческое программное обеспечение), которое позволяет нам регистрировать интерактивные службы Windows, которые работают под пользователем домена. Не совсем уверен, как это работает, но кажется, что они могут запускать пользовательский интерфейс из службы Windows в сеансе 0 (пользовательский интерфейс также изолирован). Щупальца Осьминога запускается без жалоб, и тесты пользовательского интерфейса проходят так, как мы этого хотим.

Другие вопросы по тегам