Служба Windows, которая взаимодействует с разрешением экрана рабочего стола

Я сконструировал Дженкинса как селеновую сетку и некоторые узлы Дженкинса как узлы селена (контролируемые плагином Jenkins Selenium).

Узлы связаны с опцией "Пусть Jenkins управляет этим ведомым Windows как служба Windows". Служба автоматически определяется в node как "взаимодействовать с рабочим столом". Jenkins slave позволяет Selenium удаленному сервисному обслуживанию

Проблема в том, что разрешение UI-тестов действительно низкое (1036 x 780), где нам нужно (1600x1200).

Открытие сеанса RDP не помогает, поскольку служба была запущена Jenkins.

Как изменить разрешение по умолчанию для службы Windows, которая может взаимодействовать с Desktop?

Ответ 1

У меня была такая же проблема, как у вас. Разница заключалась в том, что у меня также была автоматизация графического интерфейса, кроме тестов Selenium. Я закончил установку VNC-службы на всех узлах и написал script, чтобы изменить разрешение рабочего стола, прежде чем запускать какие-либо тесты. Однако самое высокое разрешение, сделанное нами, составляет 1280x1024, что решило мою проблему.

Ответ 2

Если вы не возражаете отказаться от запуска Jenkins Slave в качестве службы Windows, вы можете использовать этот способ: Дженкинс в Windows и графическом интерфейсе без RDC

Тем не менее, это заставит вас поддерживать открытый сеанс RDP, который запускает JNLP-процесс Jenkins... Так что это решение работает, но не очень оптимально.