2009-12-08 3 views
0

Есть ли какой-либо способ в Selenium ide, чтобы мы получили список и обработчики для всех элементов управления, представленных на любой странице? Итак, если мы получим, что мы можем протестировать это по одному с помощью RC, и это будет очень полезно, если на странице будет более 40 элементов управления. В этом случае будет очень утомительно записывать для всех.Selenium Automation

+0

Не уверен, что я понимаю ваш вопрос. Есть ли шанс, что вы могли бы перефразировать его? Что вы хотите протестировать с помощью Selenium? –

+0

На самом деле, я хочу протестировать различные элементы управления на странице, и они огромны по количеству, поэтому мы не можем просто записывать каждый элемент управления. Поэтому, думая, что если есть способ захватить все элементы управления, такие как (вкладки, флажки и т. Д.), Я мог бы экспортировать их на python и может выполнять мои скрипты с помощью Selenium RC с изменениями или комбинациями. – VarunVyas

ответ

1

В Selenium вы можете использовать getXpathCount, чтобы получить количество совпадающих элементов, а затем проехать через них. В следующем примере Java, будет выводить идентификаторы флажки на странице:

int checkboxCount = selenium.getXpathCount("//input[@type='checkbox']").intValue(); 
for (int i = 1; i < checkboxCount + 1; i++) { 
    System.out.println(selenium.getAttribute("//body/descendant::input[@type='checkbox'][" + i + "]@id")); 
} 

В WebDriver API (чтобы быть объединены в Selenium 2) существует findElements метод, который возвращает список соответствующих элементов. Приведенный выше пример будет выглядеть примерно так:

for (WebElement checkbox : driver.findElements(By.xpath("//input[@checkbox]"))) { 
    System.out.println(checkbox.getAttribute("id")); 
} 
+0

Как найти, что все типы элементов управления есть на странице? – VarunVyas

+0

Вы можете просто проверить, существует ли тип «управления», пытаясь его найти. В примере, который я дал, будут найдены флажки, но вы можете найти другие элементы, изменив XPath. Если на странице не было флажков, данный пример просто ничего не выводит. –

+0

Спасибо за помощь :) – VarunVyas

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