Pазрешение экрана на удаленной машине под сессией из под которой запускаются тесты

Когда-то давно сталкивался с аналогичной проблемой.
На дженкинсе стоит плагин для виртуального монитора: Xvfb - разрешение 1920х1080.
В общем, скриншоты на выходе были явно меньше указанного размера.
Таблетку вычитал где-то на форумах, мне помогла:
driver.manage().window().fullscreen();
driver.manage().window().maximize();
не отрабатываю корректно при работе с Xvfb (или вообще с виртуальным мониторм, точно не моиню) - и ето “старая и всем известная бага вебдрайвера”, как было сказано на форуме.

Рабочая альтернатива:
Dimension dimension = new Dimension(1920, 1080);
generalWebDriver.manage().window().setSize(dimension);

1 лайк

https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines
до момента:
If you want the service to run on start-up of the slave machine do the following (Windows only directions):

Всем привет. Я - Test Engineer и никогда не имела дела с TFS билдами. У меня возникла та же проблема - git VSTS билд агент ранится как сервис и при запуске UI тестов через RDP тесты запускаются без UI.
Теоретически знаю, что билд агент должен быть запущен не как вин сервис, а как апликейшн на билд машине. Но как запустить тесты из-под сессии? Подскажите, плиз, очень нужна ваша помощь.

Что значит запускаются без UI?
Чтобы тесты бегали на удаленки (один из вариантов):
Удаляете с удаленок Test Agent и добавляете в билд шаг Deploy TestAgent. Дальше шаг Windows Machine file copy где будете копировать построеный солюшн на дулаенку. А дальше шаг Run Functional Tests

Та же проблема. В тесте указано разрешение окна браузера 1920x1080, но тест на агенте запускается под дефолтным минимальным разрешением. Следовательно мы должны задавать в параметрах агента под каким разрешением ему запускать rdp сессию. Вот где это делается я тоже не могу найти. Пока вопрос актуальный.

Нашел причину и решение проблемы.
Решение №1:
Мы не можем никак влиять на разрешение экрана если имеем дело с виртуальной машиной.
Разрешение экрана в таком случае задается в настройках виртуалки (в некоторых нужно настраивать 3D виртуализацию).
Решение №2:
Если не помогает решение с настройкой параметров в виртуалке, то под учеткой агента нужно зайти под RDP с разрешением, которое нужно, тогда клиент наследует последнее разрешение под которым подключались, но при этом RDP сессия должна оставаться активной. Решение костыльное, но работает.
Решение №3
Если работаете без виртуалки, то разрешение экрана в системе можно задать в build steps PowerShell командой - Set-DisplayResolution -Width 1920 -Height 1080 -Force

1 лайк

у меня тоже агент висит как windows сервис. … можно ли при таких условиях поменять разрешение экрана?

как объяснено здесь

лучше всего про это забыть от слова совсем:

you should regard the difficulties involved as a signal to review whether or not your proposed approach is the best solution to whatever your underlying problem is.

Вот здесь я описал решение как можно обойти данную проблему БЕЗ необходимости занимать лицензию на сервере и запуском от обычного юзера http://www.voip-lab.ru/screen-resolution-in-selenium-tests-in-teamcity/

А ещё лучше запускать тесты в контейнерах, тогда вообще по-барабану что от чего запущено)

В те времена докер еще небыл мастхев для автотестов

Решение №3 помогло! Спасибо!