Rspec的;在没有值的属性时验证元素状态

时间:2016-04-21 20:08:19

标签: ruby rspec automation attributes watir

我正在使用Rspec和Watir进行一些自动化测试。
我目前想要做的是验证是否存在标题为hidden的按钮元素的属性。所以在伪代码中我想这样做:

Find button element; press click
Verify button element now has another attribute titled "hidden"
perform further actions

是否有可能找到这种性质的属性,或者他们是否总是需要说hidden=hidden之类的内容?

1 个答案:

答案 0 :(得分:4)

您可以使用内置的hidden?方法:

<input type="submit" value="button">
browser.button.hidden?
#=> false

<input type="submit" value="button" hidden>
browser.button.hidden?
#=> true

然后,您可以创建一个使用expectation验证的rspec示例:

describe "Button" do
  it "should be hidden" do
    expect(browser.button.hidden?).to be true
  end
end

expect(browser.button.hidden?).to be true很笨拙。正如Justin Ko精明地指出的那样,rspec以谓词匹配器的形式提供了一些语法糖,以使其更清晰:expect(browser.button).to be_hidden