2016-11-17 11 views
0

У меня есть текстовая область на веб-странице, у которой нет полосы прокрутки. Но когда i превышает символ на 1000, полоса прокрутки отображается в текстовом поле.Как проверить наличие полосы прокрутки в textarea с использованием селена.

Мне нужно проверить, присутствует ли полоса прокрутки или нет в текстовом поле, когда я нажимаю или редактирую одно и то же текстовое поле.

ответ

0

Ширина или высота клиента уменьшатся при добавлении полосы прокрутки. Таким образом, один из способов - проверить размер до и после.

Вот пример (Java):

Long height_before = Long.parseLong(element.getAttribute("clientHeight")); 
element.sendKeys("wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww") 
Long height_after = Long.parseLong(element.getAttribute("clientHeight")); 

Assert.True((height_before - height_after) > 10); 

Или:

Long clientHeight = Long.parseLong(element.getAttribute("clientHeight")); 
Long offsetHeight = Long.parseLong(element.getAttribute("offsetHeight")); 

Assert.True((offsetHeight - clientHeight) > 10); 
+0

Спасибо за решение. Но что делать, если мне нужно отредактировать веб-страницу или любой документ, в котором textarea уже заполнено максимальными символами. В этом случае, как я могу утверждать полосу прокрутки, потому что в этом случае мои до и после высоты одинаковы. И это здорово, если вы поможете ne в java. – Bugasur

+0

Чтобы утвердить полосу прокрутки, вы также можете получить разницу между offsetHeight и clientHeight. Посмотрите здесь для разных размеров: http://i.stack.imgur.com/5AAyW.png –

+0

Каждый раз, когда я становлюсь ложным как логическое, хотя высота смещения больше, чем высота клиента – Bugasur

1

Есть способы, которыми вы можете это сделать.

1: Как упоминалось, полоса прокрутки появляется только в том случае, если символы textarea превышают 1000, поэтому вы можете проверить длину текста в текстовом поле, чтобы определить, существует ли полоса прокрутки или нет.

2: Получить значение css для textarea и проверить, overflow-y is scroll. Пример для python selenium

element.value_of_css_property('overflow-y') 

 Смежные вопросы

  • Нет связанных вопросов^_^