2016-12-19 5 views
0

Я хотел бы сделать снимок экрана всей страницы. Размер, который я хотел бы захватить, - ширина - 1200 пикселей, высота - 5000 пикселей. Когда я устанавливаю resizeWindow(1200, 5000), он не расширяет окно за пределами моего экрана рабочего стола размером 1080 пикселей.Как сделать снимок экрана всей страницы с помощью NightwatchJS

ответ

0

В вашем nightwatch.json пожалуйста, добавьте "разрешение": "1200x5000":

"yourPlatformName": { 
    "selenium_port": ..., 
    "selenium_host": ..., 
    "desiredCapabilities": { 
     "os": "...", 
     "os_version": "...", 
     "browserName": "...", 
     "resolution": "1200x5000" 
     //... 
    } 
} 

работает ли?

+0

ли, кажется, не. Снимок экрана все еще обрезается. – Andrevinsky

0

В большинстве реальных браузеров кажется невозможным, если вы не полагаетесь на метод прокрутки и строчки, который не будет работать с липкими частями страницы.

Причина в том, что Selenium требует скриншотов видовых экранов, а не целых страниц, поэтому большинство драйверов не реализуют его. Исключение - будущее Firefox с geckodriver, поскольку они заявили о своей заинтересованности в его реализации на своей стороне.

Вы можете использовать phantomjs с селением и большой размер окна, так как он может изменить размер за пределами области просмотра. Пример Phantomjs desiredCapabilities:

"desiredCapabilities": { "browserName": "phantomjs", "javascriptEnabled": true, "acceptSslCerts": true, "phantomjs.binary.path": "../../../../node_modules/phantomjs-prebuilt/bin/phantomjs", "phantomjs.cli.args": ["--ignore-ssl-errors=true", "--web-security=false", "--ssl-protocol=any"] }

Смежные вопросы