2016-04-21 1 views
1

RspecとWatirを使用していくつかの自動化テストを行っています。
現在、ボタン要素の属性がhiddenであることを確認します。私はこれをやりたい疑似コード中のSO:
Rspec;属性が値を持たない場合の要素の状態を確認する

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

が、それはこのような性質の属性を見つけることが可能です、または彼らは常にhidden=hiddenような何かを言う必要があるのですか?

答えて

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

+0

RSpecの[predicate matcher](https://www.relishapp.com/rspec/rspec-expectations/v/3-4/docs/built-in-matchers/predicate-matchers)は、 'expect(browser.button).to be_hidden' –

+0

@Justin Ko:よろしくお願いします。それを簡単に保つことを試みていた。私はあなたの提案を更新しました。 – orde

+0

ありがとう、これは動作します - 私は構文的な砂糖を利用するためにいくつかのリファクタリングを行う必要がありますが、全体的に#隠れていますか?作品! – kmancusi

関連する問題