Selenoid: почему я не могу запустить определенную версию браузера?

У меня есть следующий файл конфигурации browsers.json:

{
    "chrome": {
        "default": "69.0",
        "versions": {
            "60.0": {
                "image": "selenoid/chrome:60.0",
                "port": "4444",
                "path": "/",
                "tmpfs": {
                    "/tmp": "size=128m"
                }
            },
            "69.0": {
                "image": "selenoid/chrome:69.0",
                "port": "4444",
                "path": "/",
                "tmpfs": {
                    "/tmp": "size=128m"
                }
},
    "firefox": {
        "default": "60.0",
        "versions": {
            "50.0": {
                "image": "selenoid/firefox:50.0",
                "port": "4444",
                "path": "/wd/hub",
                "tmpfs": {
                    "/tmp": "size=128m"
                }
            },
            "60.0": {
                "image": "selenoid/firefox:60.0",
                "port": "4444",
                "path": "/wd/hub",
                "tmpfs": {
                    "/tmp": "size=128m"
        }
            }
        }
    },

В тестах у меня есть следующий код:

capabilities = {
                "browserName": "chrome",
                "version": "60.0"
            }
            options = webdriver.ChromeOptions()
            options.add_argument('--ignore-certificate-errors')
            options.add_argument('--no-sandbox')
            self.driver = webdriver.Remote(
                command_executor="http://localhost:4444/wd/hub",
                desired_capabilities=capabilities, options=options)

вопрос: почему я не могу запустить конкретную версию браузера? Это дает мне исключение:

WebDriverException: Message: Requested environment is not available

Если я не укажу версию в возможностях, тест будет успешно выполнен.

1 ответ

Как я уже говорил в выпуске Github и на форуме AT, ваш конфиг и код кажутся правильными. Убедитесь, что ваш конфигурационный файл используется Selenoid (либо перезапустите его контейнер, либо выполните docker kill -s HUP selenoid). Если это не поможет - обратите внимание ENVIRONMENT_NOT_AVAILABLE сообщения в журнале Selenoid, они указывают, какое имя и версия браузера на самом деле поступают в Selenoid из ваших тестов.

Другие вопросы по тегам