1

私は現在、統合テストとテスト フレームワークの一部としてカピバラを使用しています。解決策が見つからないように見える問題に直面しています。シナリオは次のとおりです。最初に tbody 要素の検索を行います。私はオブジェクトを取り戻し、それはすべて順調です。私が直面している問題は、作業している tbody オブジェクトの css クラスが変更されたことを確認する必要があるテストのポイントがあることです。これまでに試したすべての方法は失敗します。コードは次のようになります。

@element = find('tbody')

--tbody css selecor changes to '.is-edit-post'

@element.find('.is-edit-post')

カピバラオブジェクトにそのcssセレクターがあると主張しようとしています。私も次のことを試しました:

@element.has_css('.is-edit-post')

@element.assert_selector('.is-edit-post')

さて、 #find メソッドがどのように機能し、正確に何を返すかを完全には理解していません。この時点で、tbody オブジェクトが検出されて #find メソッドによって返された時点でその css セレクターがなかったため、false を返しているか、見つからないという例外をスローしていると推測しています。

そのオブジェクトの属性が変更された場合、そのカピバラオブジェクトの属性を取得する方法について誰か考えがありますか?

4

1 に答える 1

0

この質問を投稿してから長い時間が経ちましたが、この場合に探していた答えは次のとおりだったと思います。

@element[:class].include? 'is-edit-post'

または、要素が更新されなかった場合は、再度取得してクラスを確認する必要があります。

find('tbody')[:class].include? 'is-edit-post'

いずれにせよ、私はずっと前にこの問題を回避しました。

于 2014-12-24T21:04:50.230 に答える