У меня есть скрипт, который следует по ссылке, авторизуется (окно всплывающего окна) и делает скриншот.Используйте в комбинации в док-контейнерах (автономный хром (хромедрайвер + селен) и ночные часы).Все тесты работают, кроме одного.
Мои версии: ChromeDriver 73.0.3683.68, сервер Selenium версии 3.141.59, nightwatch v1.0.19 Мой конфиг nightwatch.js:
const { Authenticator } = require('/usr/lib/node_modules/authenticator-browser-extension');
var config = {
"globals_path": "globals.js",
"output_folder": "reports",
"src_folders": ["run"],
"test_workers" : {
"enabled": true,
"workers": "auto"
},
"live_output" : true,
"test_settings": {
"default": {
"start_process" : true,
"selenium_host": "chromedriver",
"screenshots": {
"enabled": true,
"on_failure": false,
"on_error" : true,
"path": "screenshots"
},
"desiredCapabilities": {
"browserName": "chrome",
"acceptSslCerts": true,
"javascriptEnabled": true,
"acceptInsecureCerts": true,
"cssSelectorsEnabled": true,
"chromeOptions" : {
"args" : ["show-cert-link", "disable-notifications", "load-extension", "disable-popup-blocking", "no-proxy-server", "no-sandbox", "no-headless"],
"extensions": [
Authenticator.for("admin", "admin123").asBase64()
]
}
}
}
}
};
module.exports = config;
Это моя частьdocker-compose (я запускаю его с ansible):
- name: Start container with standalone-chrome
docker_container:
name: chromedriver
image: standalone-chrome:latest
recreate: yes
volumes:
- "{{playbook_dir}}/test/:/home/node/:z"
- "/etc/hosts:/etc/hosts:z"
- "/dev/shm:/dev/shm"
env:
DBUS_SESSION_BUS_ADDRESS: /dev/null
- name: Start container with nightwatch
docker_container:
name: nightwatch
image: nightwatchjs:latest
recreate: yes
links:
- "chromedriver:chromedriver"
env:
WAIT_FOR_HOSTS: chromedriver:4444
DBUS_SESSION_BUS_ADDRESS: /dev/null
volumes:
- "{{playbook_dir}}/test:/home/node"
- "/dev/shm:/dev/shm"
command: '--config nightwatch.js --test run/postdeployment.js'
cleanup: yes
detach: no
У меня есть ошибки типа:
POST http://chromedriver:4444 /wd/hub/session/a4ae5b9eafe417f37d71d99e426ffbb0/url - ECONNRESET
Error: socket hang up
at createHangUpError (_http_client.js:342:15)
at Socket.socketCloseListener (_http_client.js:377:23)
Error while running .navigateTo() protocol action: An unknown error has occurred.
POST http://chromedriver:4444 /wd/hub/session/a4ae5b9eafe417f37d71d99e426ffbb0/elements - ECONNRESET
Error: socket hang up
at createHangUpError (_http_client.js:342:15)
at Socket.socketCloseListener (_http_client.js:377:23)
Error while running .locateMultipleElements() protocol action: An unknown error has occurred.
Можете ли вы что-нибудь посоветовать?Спасибо!