Selenium, CSS и Python: невозможность просмотра текста по умолчанию в текстовом поле - PullRequest
0 голосов
/ 11 октября 2011

У меня есть текстовое поле, которое содержит текст по умолчанию 'abc'.Когда я пишу что-то внутри этого поля или курсор находится внутри этого поля, текст по умолчанию исчезает.Основной тег HTML для этого поля:

<div id="InputDefault" class="defaultText" style="visibility: visible;">abc</div>

Теперь вручную все работает нормально.Я пишу контрольный пример в Selenium , чтобы проверить, появляется ли текст по умолчанию, когда поле пусто.Но в тестовом случае это иногда срабатывает и чаще всего дает сбой.Я написал следующую функцию:

#I first delete the text in the field (I have used a text element)/
self.se.type(#I first delete the text in the field (I have used a text element).
self.se.type(locators["search_field_header"], "")
#Then I focus on the field.
self.se.set_cursor_position("headerParam", "")
    #Then I focus on the field
    self.se.set_cursor_position("headerParam",0)
    #Press the TAB key to move focus away from the search field to get default text.
    self.se.key_press_native("9")
    self.se.set_speed(1000)
    is_footer_default_text_present = self.is_element_available("InputDefault")

Но это как-то не работает.В чем проблема, и есть ли лучшее / надежное решение?

1 Ответ

0 голосов
/ 11 октября 2011

Используйте selenium.is_visible(locator).Если это не работает, тогда используйте selenium.is_text_present(value) или if (Expectedvalue == selobj.get_value(parameter)).

Если это все еще не работает, обновите страницу и попробуйте выше.

...