SetSize () не работает должным образом: селен + Java - PullRequest
1 голос
/ 22 апреля 2019

Я пытаюсь установить размер моего браузера с помощью следующего кода, установив его на (411 850), но установив его на (51 38 850) только для окон .:

ширина - 513 вместо 411, только для окон.

Примечание: я следую этому порядку в моем коде

setSize(driver,411,850);
driver.get(url);
public void setSize(int width, int height) {
    try {
        System.out.println("Before setSize : "+driver.manage().window().getSize().width+","+driver.manage().window().getSize().height);
        System.out.println("calling setSize: w=" + width + ",h=" + height);
        Dimension d = new Dimension(width, height);
        driver.manage().window().setSize(d);
        System.out.println("After setSize : "+driver.manage().window().getSize().width+","+driver.manage().window().getSize().height);

    } 
    catch (Exception e)
    {
        System.out.println("ERROR: while setSize()");
    }
}

ВЫХОД ДЛЯ WINDOWS:

Before setSize : 1050,840
calling setSize: w=411,h=850
After setSize : 513,850

ВЫХОД ДЛЯ MAC-OS:

Before setSize : 1200,1005
calling setSize: w=411,h=850
After setSize : 411,850

1 Ответ

0 голосов
/ 22 апреля 2019

Это происходит потому, что Chrome имеет минимальный размер окна.Селен не может сделать окно меньше этого.Если вы попытаетесь изменить размер chrome на вашем компьютере вручную, вы увидите, что он не масштабируется ниже определенного предела.Вы устанавливаете ширину и высоту окна ниже предела, разрешенного Chrome.Вот почему вы получаете другой результат.

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

На моем ПК (495,138) - это наименьшее ограничение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...