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

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

Я пытаюсь автоматизировать тесты кодированного интерфейса.

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

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

В настоящее время тесты выполняются только при подключении через Remote Desktop, и окно должно быть открытым. Когда я закрываю сеанс удаленного рабочего стола, тесты не запускаются.

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

Спасибо

4b9b3361

Ответ 1

Самое простое решение этой проблемы - просто включить автозапуск в тестовую среду (в зависимости от ОС есть множество способов сделать это).

При включенном автосогласовании, когда я перезапускаю тестовую среду (используя команду "shutdown.exe/r", которая может быть написана сценарием), тестовая среда загружает резервную копию с активным сеансом сеанса, и поэтому тесты могут успешно выполняться.

Для моей ночной автоматизации тестирования я включил автозапуск в своей тестовой среде и запланировал перезапуск перед выполнением теста.

У меня не было проблем с этим методом, и это означает, что мне не нужно подключаться через Remote Desktop.

Ответ 2

Я столкнулся с той же проблемой с нашей дистанционной тестовой машиной, но наши тестовые машины работают на Hyper-V. С Hyper-V решение просто подключается через Hyper-V вместо подключения к удаленному рабочему столу, а закрытие соединения Hyper-V не блокирует компьютер.

Другим предложением было бы обойти тот факт, что Remote Desktop автоматически блокирует ваш экран. Здесь немного сказано об этом: http://homeservershow.com/remote-desktop-session-locks-workstation-after-exit.html

В принципе, запустите "tscon.exe RDP-Tcp # 0/dest: console" в командной строке с удаленной машины, если вы хотите отключиться. Машина должна оставаться разблокированной, и тесты будут работать нормально.

В соответствии с @Zatricion эта команда может быть обобщена:

tscon.exe %sessionname% /dest:console

Ответ 3

Из MSDN:

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

Если вы используете CodedUi Tests через Visual Studio (означает, что тесты выполняются в вашей учетной записи), я считаю, что вы должны подключаться через удаленный рабочий стол к удаленному тестовому серверу.

Однако вы можете использовать Microsoft Test Manager для запуска тестов:

Ответ 4

Это очень просто, пожалуйста, проверьте этот пост в блоге здесь, эта вещь объясняется очень простым способом Как запланировать выполнение теста Coaded UI для Microsoft, если у вас нет MS TFS

  • Создайте выпуск стабильного кодированного проекта пользовательского интерфейса, выполнив следующие шаги я. Открыть сборку > Пакетная сборка

II. Нажмите "Восстановить", если релиз уже построен

  1. После успешного создания проекта кодированного интерфейса перейдите в папку выпуска проекта и скопируйте файл testAutomated.dll с именем вашего проекта

  2. Поместите эту DLL на удаленную машину, где вы хотите запланировать выполнение теста

  3. Поместите DLL в какой-либо каталог удаленного компьютера, например, я помещаю в D:\coadedUitest

  4. Установите тестовый агент Miscosoft из этой ссылки на этом компьютере, где вы хотите выполнить тест. http://www.microsoft.com/en-us/download/details.aspx?id=38186

  5. После установки тестового агента проверьте, что MS-тест присутствует в местоположении

  6. Откройте блокнот и введите следующий текст D: cd coadedUitest set mstestPath = "C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE" % mstestpath%\mstest/testcontainer:testAutomated.dll

  7. Сохраните его с расширением .bat

  8. Откройте файл .bat, дважды щелкнув его, чтобы проверить, выполнены ли тесты.

  9. После успешного выполнения откройте планировщик задач Windows и создайте запланированную задачу для запуска этого созданного файла .bat.

http://testingtoolstecniques.blogspot.com/2014/11/how-to-schedule-microsoft-coaded-ui.html

Ответ 5

UPDATE:

Использование системы сборки VSO или TFS2015 больше не требует удаленного подключения для запуска тестов. Создайте сборку или выпуск, выполняющий задачу "Развертывание тестового агента Visual Studio", затем запустите "Запуск функциональных тестов".

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

ПРИМЕЧАНИЯ:

  • Если вы запустите удаленное соединение вручную, прогон завершится неудачно.
  • Если вы создадите удаленное соединение и отключитесь, а не выйдите из системы, прогон завершится неудачно.
  • Автозапуск включен, а перезапуск по-прежнему позволяет выполнять эти тесты.
  • Используя Hyper-V, вы можете увидеть рабочий стол сервера, на котором выполняются тесты, это очень маленькое окно, но дает вам представление о том, что делает сервер.

Ответ 6

Просмотр/взаимодействие с машиной с помощью VNC (например, TightVNC)

Ответ 7

Вы можете использовать VMware для запуска ваших кодированных тестов ui. если вы минимизируете виртуальную машину, тест будет продолжаться.

См. эту ссылку для получения более подробной информации. http://www.binaryclips.com/2016/03/coded-ui-tests-executing-test-case.html

Ответ 8

- Предпочтительный Решение 1. Имейте клиент Hyper-V и просто запустите кодированные тесты пользовательского интерфейса, используя задачу расписания. Нет проблем.

- предпочтительное Решение 2. Вам необходимо иметь 2 виртуальных машины. Первый удаленный рабочий стол на виртуальную машину 1, затем с удаленного компьютера VM 1 на VM 2, где будет запущен кодированный пользовательский интерфейс. После того, как в VM2 запущен кодированный пользовательский интерфейс, просто отключите виртуальную машину 1. Это будет держать сеанс открытым и никогда не будет проблем.

без предпочтений Решение 3. Перезапустите виртуальную машину с помощью командной строки. На вашем виртуальном компьютере включен автоматический вход в систему. Задайте запланированную задачу для запуска кодированного пользовательского интерфейса.

Я использовал этот метод и нашел некоторые из моих тестов.

- наименее предпочтительный Решение 4: используйте tscon.exe% sessionname%/dest: console  Я использовал этот метод, но не могу гарантировать, что ваш тест будет работать без каких-либо проблем.