18

カピバラでこの問題を解決するのを手伝ってください

カピバラには次のようなボタンがあります。

<input type="submit" value="Verify" name="verify" id="verify" class="button">

で試しました

click_button "verify"

しかし、それはエラーを出します:

Failure/Error: find('#verify').click
NoMethodError:
  undefined method `node_name' for nil:NilClass
4

4 に答える 4

21

著者による回答

問題は html コード内にあります。

<div>
<form>
<div>    
</div>
</div>
  <input type="submit" value="Verify" name="verify" id="verify" class="button">
</form>

冗長な が 1 つあるため</div><input>フォームの外側で扱われ、capybaraこれらのエラーが発生します。冗長を削除した後</div>、すべて正常に動作します。

于 2012-06-27T16:29:04.787 に答える
16

に追加js: trueしてみてくださいdescribe。これは、ボタンを含むフォームがない場合に発生します。

于 2013-02-05T15:28:34.880 に答える
0

CSS セレクターを「倍増」しようとしましたか? これは、capybara-2.4.3 以降の私の頼りになるメカニズムです。

find("#verify").find("[name=verify]").click

#id-vale に加えて他の属性は、トリックを行う必要があります。

find("#verify").find(".button]").click
于 2015-03-30T20:27:25.957 に答える