我有一個隱藏着點擊按鈕的元素,但出於美觀的原因,我們通過更改不透明度來隱藏它。如何使用Capybara檢查此元素的不透明度爲0?根據不透明度檢查元素的可見性
<div class="row lower-section" style="opacity: 0; ">
不幸的是is_visible()doesn't check CSS。
感謝,
邁克
我有一個隱藏着點擊按鈕的元素,但出於美觀的原因,我們通過更改不透明度來隱藏它。如何使用Capybara檢查此元素的不透明度爲0?根據不透明度檢查元素的可見性
<div class="row lower-section" style="opacity: 0; ">
不幸的是is_visible()doesn't check CSS。
感謝,
邁克
我會嘗試使用XPath定位按鈕,並檢查它的風格標籤。 類似...
page.should have_xpath(:xpath, "//div[@class='row lower-section' @style='opacity: 0;')
應該工作。
檢查的詳細信息的文檔
我發現jQuery的工作最適合這類事情。我發現使用xpaths太變幻莫測了 - 特別是如果你是網絡測試而不是機架測試。我會這樣做:
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