Как запустить автоматизированные тесты GUI на удаленной виртуальной машине ESXi без головы? - PullRequest
5 голосов
/ 14 сентября 2011

Я пытаюсь настроить автоматические тесты GUI на виртуальных машинах ESXi с помощью TestComplete.Проблема, насколько я понимаю, состоит в том, что, когда к виртуальной машине ESXi не подключено удаленное подключение к рабочему столу, TestComplete не может выполнять снимки экрана и, следовательно, автоматизировать тестирование графического интерфейса.Насколько я понимаю, это связано с тем, что Windows не создает никакого пользовательского интерфейса, когда его никто не просматривает.

Я уверен, что другие сталкивались с этой проблемой.Как ты это решил?Используете ли вы сторонний компьютер, который автоматически запускает подключения к удаленному рабочему столу перед запуском тестов?

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

Какие-нибудь более умные решения, о которых я не думал?

Ответы [ 3 ]

6 голосов
/ 15 сентября 2011

Вы должны иметь возможность войти в Windows на консоли виртуальной машины с помощью клиента vSphere, затем закрыть vSphere, и Windows по-прежнему будет считать, что пользователь просматривает консоль.Просто как тот.:)

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

Пока ваши тесты выполняются от имени этого вошедшего в систему пользователя Windows, все будет в порядке.

Этот метод всегда работал для меня как очарование в некоторых тестах автоматизации пользовательского интерфейса Watir, Selenium и MS, которые зависят от наличия интерактивного рабочего стола.

Если вам необходимо автоматически перезагрузить виртуальную машину перед/ во время теста вместо входа в систему вручную в клиенте vSphere вы можете автоматически войти в систему Windows как произвольный пользователь - проверьте команду «control userpasswords2» или воспользуйтесь приложением Sysinternals «Autologin»:

http://technet.microsoft.com/en-us/sysinternals/bb963905

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

Если вам нужно решение для удаленного запуска ваших тестов, я настоятельно рекомендую использовать Jenkins или Hudson для запуска тестов / сбора результатов с виртуальной машины.,Дженкинс изменил мою жизнь в этом отношении.

1 голос
/ 14 сентября 2011

Вы можете рассмотреть возможность использования функциональности Network Suites в TestComplete: http://smartbear.com/support/viewarticle/16849/

Он может самостоятельно открывать подключения к удаленному рабочему столу, управлять тестами на удаленных ПК и возвращать журналы обратно в «главный» проект. Эта функция предназначена для использования в распределенных тестах и ​​выглядит так, как будто вам нужно.

Что касается открытия RDP для виртуальной машины без головы, то это не должно быть проблемой - об этом «думает» Windows. Вы просто открываете RDP, и он работает, даже если к удаленному ПК / ВМ не подключен монитор.

Надеюсь, это поможет, Alex

0 голосов
/ 29 октября 2012

Вы всегда можете использовать VNC с проверкой опции «Ничего не делать» при отключении зрителя. Таким образом, вы будете обманывать окна для создания изображения.

...