0

昨日、このリンクが有効になっているかどうかを判断し、有効になるまで待ってクリックしました。Cucumber + Ruby + Watir + Page-Object gem を使用しています。リンクは次のようになります。

<a id="the_link"  href="#" disabled="disabled">Proceed with your order</a>

いくつかのフィールドに入力すると、リンクが有効になり、ソースが次のように変わります。

<a id="the_link"  href="#">Proceed with your order</a>

リンクがこの方法で有効になるまで待つという考え方で、これはボタンで動作します:

def click_on_link
  Watir::Wait.until { self.the_link_element.element.enabled? }
  self.the_link
end

...しかし、リンクでは機能しません。このようにして、属性が存在するかどうかを判断できるようにしました。

def click_on_proceed_form
  Watir::Wait.until { !self.the_link_element.element.attribute_value('disabled') }
  self.proceed_form_submit
end

「有効?」をお探しですか?ここのWatir ドキュメントまたはここのPage-Object gem でメソッドを使用すると、すべての要素で使用できるようです。しかし、こちらの Watir ドキュメントで同じメソッドを探していると、ボタン、選択、および入力でのみ使用できるようです。

それで、「有効?」があるのだろうか?リンク (アンカー) のメソッドと、存在する場合はその使用方法。この問題を明確にするのを手伝ってもらえますか? どうもありがとうございました!

4

1 に答える 1