2017-02-09 2 views
2

Я использую селен питон и ищу способ утверждать, что элемент не присутствует, что-то вроде:Утверждают элемент не присутствуют питон Селен

assert not driver.find_element_by_xpath("locator").text== "Element Text" 
+0

Что случилось с этой строкой кода? – BlackBear

+0

@BlackBear Ну, разве это не займет много времени в зависимости от тайм-аута? –

+0

Не получается, говоря: Не удалось найти элемент – mike

ответ

3

Вы можете использовать ниже:

assert len(driver.find_elements_by_xpath("locator")) < 1 

Это должно пройти утверждение, если ни один из элементов, которые соответствуют вашой locator не было найдено или AssertionError, если по крайней мере 1 найдено

Обратите внимание, что если элемент генерируется DYNA mically некоторых JavaScript он может появиться в DOMпосле утверждения выполняется

1

если вы используете py.test для проверки в assert, и вы хотите, чтобы проверить сообщение о ожидаемом исключении:

import pytest 

def test_foo(): 
    with pytest.raises(Exception) as excinfo: 
     x = driver.find_element_by_xpath("locator").text 
    assert excinfo.value.message == 'Unable to locate element' 
Смежные вопросы