2015-04-29 3 views
2

Я использую следующий водосвинку запрос:Capybara возвращает скрытые элементы при использовании полтергейста?

all(:xpath, '//table[@class="myClass"]//tr) 

Моя таблица содержит две записи:

<tr class="class1" style="visibility: hidden;"> 
<tr class="class2"> 

Код выше немного упрощен по сравнению с оригиналом, но он служит примером. При запуске Capybara против Chrome или Firefox запрос выводит один элемент (класс2). При запуске того же кода с Poltergeist я получаю оба элемента. Я попытался поиграть с явным сообщением Capybara игнорировать скрытые элементы, но я все еще получаю скрытый. Я что-то упустил?

+0

ли вы найти обходной путь для этого? – Pablo

+1

@Pablo Не совсем. То, что я делаю, - это фильтр «class1» вручную (например, в приведенном выше примере) с использованием xPath так: 'all (: xpath, '// table [@ class =" myClass "] // tr [not (@ class =" class1 «)])'. Это, конечно, не всегда возможно. – Okiba

+0

IIRC all возвращает все элементы, если вы не укажете 'visible: true' – joewoodward

ответ

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