IK
urllib3.connectionpool:connectionpool.py:749 Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f444c79df40>: Failed to establish a new connection: [Errno -2] Name or service not known')': /wd/hub/session
Инициализация драйвера
def browser(request):
browser = request.config.getoption('--browser')
if browser == 'firefox':
firefox_options = webdriver.FirefoxOptions()
firefox_options.add_argument('--start-maximized')
firefox_options.add_argument('--no-sandbox')
firefox_options.add_argument('window-size=1920x1080')
firefox_options.add_argument('--disable-features=VizDisplayCompositor')
firefox_options.add_argument('--headless')
firefox_options.add_argument('--disable-gpu')
driver = webdriver.Remote(
command_executor='http://0.0.0.0:4444/wd/hub',
desired_capabilities=DesiredCapabilities.FIREFOX,
# options=firefox_options
)
yield driver
driver.quit()
elif browser == 'chrome':
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--start-maximized')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('window-size=1920x1080')
chrome_options.add_argument('--disable-features=VizDisplayCompositor')
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
driver = webdriver.Remote(
command_executor='http://0.0.0.0:4444/wd/hub',
desired_capabilities=DesiredCapabilities.CHROME,
# options=chrome_options
)
В docker-compose вот так
services:
selenoid:
image: "aerokube/selenoid"
network_mode: bridge
ports:
- "4444:4444"
volumes:
- "./selenoid/browsers.json:/etc/selenoid/browsers.json"
- "/var/run/docker.sock:/var/run/docker.sock"
- "$PWD.:/etc/selenoid"
- "$PWD/video:/opt/selenoid/video"
environment:
- OVERRIDE_VIDEO_OUTPUT_DIR=$PWD/video
- LIMIT=10
command: ["-conf", "/etc/selenoid/browsers.json", "-video-output-dir", "/opt/selenoid/video", "-limit", "10", "-session-delete-timeout", "10s", "-timeout", "20s"]
selenoid-ui:
image: "aerokube/selenoid-ui"
network_mode: bridge
links:
- selenoid
ports:
- "8081:8080"
command: ["--selenoid-uri", "http://selenoid:4444"]
tests:
container_name: selenium-tests
network_mode: bridge
build:
context: .
dockerfile: Dockerfile
depends_on:
- selenoid
- selenoid-ui
command: ["pytest", "--browser='chrome'", "tests.py"]