Проверьте видимость элемента на основе непрозрачности - PullRequest
2 голосов
/ 12 марта 2012

У меня есть элемент, который скрыт одним нажатием кнопки, но по косметическим причинам мы скрываем его, изменяя непрозрачность.Как я могу проверить, что непрозрачность этого элемента равна 0, используя Capybara?

<div class="row lower-section" style="opacity: 0; ">

К сожалению is_visible () не проверяет CSS.

Спасибо,

Майк

Ответы [ 2 ]

1 голос
/ 24 мая 2012

Я нашел, что jQuery лучше всего работает для такого рода вещей.Я обнаружил, что использование xpath слишком непостоянно, особенно если вы проводите веб-тестирование, а не тестирование в стойке.Я бы сделал что-то вроде этого:

Given I do something
Then I should see that "element" has "opacity" value "0"

Then /^I should see that "([^\"]*)" has "([^\"]*)" value "([^\"]*)"$/ do |element,   
   property,value|
 @result = page.evaluate_script("$('#{element}').css('#{property}');")
 @result.should eql(value), "expected #{property} on #{element} to be #{value}"
end 
1 голос
/ 12 марта 2012

Я бы попробовал использовать xpath, чтобы найти кнопку и проверить ее тег стиля. Что-то вроде ...

page.should have_xpath(:xpath, "//div[@class='row lower-section' @style='opacity: 0;')

должно работать.

Проверьте документы для получения дополнительной информации https://github.com/jnicklas/capybara

...