Установите уровень масштабирования 100% в Selenium WebDriver, если значение по умолчанию не равно 100

Я столкнулся с проблемой с Selenium WebDriver в Java, где я не могу установить уровень масштабирования браузера IE до 100%, когда у пользователя другое значение по умолчанию. Ctrl + 0 не работает, так как это устанавливает масштаб по умолчанию. Я попытался установить масштабирование с помощью JavascriptExecutor, как видно из других постов. Любая помощь будет оценена.

5 ответов

Попробуйте игнорировать уровень масштабирования все вместе.

DesiredCapabilities caps = DesiredCapabilities.internetExplorer(); caps.setCapability("ignoreZoomSetting", true); driver = new InternetExplorerDriver(caps);

Вы можете увидеть других с проблемой увеличения здесь: Подобная проблема

Из того, что я гуглил, вы можете установить масштаб по умолчанию, используя реестр. Я сам не пробовал, но вы должны быть в состоянии захватить настройки пользователя по умолчанию, изменить их на 100% (если его там еще нет), выполнить тест, а затем восстановить их настройки по умолчанию.

Я не пробовал это сам, но это выглядит довольно просто.

HKEY_CURRENT_USERS\SOFTWARE\Microsoft\Internet Explorer\Zoom

Установите ZoomFactor в 1000 раз больше, чем вы хотите, например, 125% - это 125000

https://support.microsoft.com/en-us/help/2689447/how-to-set-the-zoom-level-in-internet-explorer-9

Попробуйте это, вы можете настроить расчет, который возвращает текущий уровень масштабирования, я могу ошибаться в этом

from selenium import webdriver

driver = webdriver.Chrome(executable_path='C:\\Automation Projects\\Selenium Server\\chromedriver.exe')

driver.get('Https://www.google.com')

zoom_level = driver.execute_script('return (window.outerWidth / window.innerWidth)')
if zoom_level > 1:
    driver.execute_script("document.body.style.zoom='90%';")
      JavascriptExecutor js =(JavascriptExecutor)driver;
        js.executeScript("document.body.style.zoom='100%'");

Попробуйте код ниже, это рабочий код

InternetExplorerOptions capabilities= new InternetExplorerOptions();
            capabilities.setCapability(InternetExplorerDriver.IGNORE_ZOOM_SETTING, true);
            System.setProperty("webdriver.ie.driver", Constant.drivers + "\\IEDriverServer.exe");
            driver = new InternetExplorerDriver(capabilities);
            driver.manage().window().maximize();
Другие вопросы по тегам