Как проверить, присутствует ли конкретный текст или нет в случае селена RC . браузер IE

Я использую селен RC с прошлых 3 месяцев. Я использую Internet Explorer почему, потому что мое приложение работает только в IE. все идет хорошо, но проблема в том, что я не могу проверить текст, даже если текст присутствует на странице. Я использую следующий код для проверки текста.

if(s.isTextPresent("Opportunities"))
            {
                System.out.println("continue");
            }
            else
            {
                System.out.println("error");

    }

приведенный выше текст присутствует в приложении, но все равно это ошибка печати

<td>
<td>
<th title="Sort by Owner" class="ms-crm-List-Sortable" entityname="opportunity" >
   <nobr>
     ...Text - Owner
     ..<img class="ms-crm-List-Sortable" alt="" src="http://dmgt-t complete="complete"/>
<td>
<th title="Sort by Topic" class="ms-crm-List-Sortable" entityname="opportunity" >
<td>

HTML-формат моей страницы такой же, как и выше. Мне нужно подтвердить текст "Владелец". Я не могу проверить, используя инструкцию if(selenium.isTextPresent("Владелец"))

если условие дает ложь, но на странице присутствует текст

2 ответа

Решение

Используйте get.text(locator) и проверьте, используя if(==). Локатор может быть либо xpath,csspath или любым идентификатором или именем элемента xpath=//th[@title='Сортировать по владельцу']

Я предполагаю, что это потому, что текст отсутствует в той точке, в которой вы его проверяете. Если вы можете выполнить обновление до Selenium v2, попробуйте использовать метод waitForText, он описан здесь, в противном случае вызовите текст, представленный методом, который принимает значение тайм-аута, а проверка цикла - текст, присутствующий до его истечения, или истечения времени ожидания, например

public bool IsTextPresent(string text, int millisecondsToWait) {
    Date start = new Date();
    while ((new Date().getTime() - start.getTime()) < millisecondsToWait) {
        if (s.isTextPresent(text)) return true;
        Thread.sleep(100);
    }
    return false;
}
Другие вопросы по тегам