[解決済み] Capybara 2.0にアップグレードした後、アイテムリストの最初のリンクをクリックする方法は?
2022-06-08 13:55:23
質問
この場合、最初のリンクはどのようにクリックすればよいのでしょうか。
<div class="item">
<a href="/agree/">Agree</a>
</div>
<div class="item">
<a href="/agree/">Agree</a>
</div>
within ".item" do
first(:link, "Agree").click
end
と入力すると、こんなエラーが出ます。
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching css ".item"
そして
within
このエラーが出ます。
Failure/Error: first(:link, "Agree").click
NoMethodError:
undefined method `click' for nil:NilClass
どのように解決するのですか?
を使えばいいんです。
first('.item').click_link('Agree')
または
first('.item > a').click
(デフォルトのセレクタが:cssの場合)
ご質問のコードは、次のように動作しません。
within ".item" do
first(:link, "Agree").click
end
とは等価である。
find('.item').first(:link, "Agree").click
カピバラは、いくつかの
.item
を見つけると例外が発生します。私はCapybara 2のこの動作は非常に良いと考えています。
関連
-
[解決済み】Rubyで "gets "と "gets.chomp "を使用する方法
-
[解決済み] Rubyのメソッド'to_sym'は何をするのですか?
-
[解決済み] Ruby on railsで改行せずにコンソールに "puts "を使用するにはどうすればよいですか?
-
[解決済み] 配列をアルファベット順に並べるには?
-
[解決済み] rubyでディレクトリからすべてのファイルを要求する最良の方法?
-
[解決済み] Ruby で Fixnum から String への暗黙の変換ができない (TypeError)
-
[解決済み] Rubyで中央値を計算する
-
[解決済み] Rubyでfailキーワードは何をするのですか?
-
[解決済み] rvmのインストールがうまくいきません。"RVMは機能ではありません"
-
ERRORの問題を解決します。rails のインストール時に gem ネイティブ拡張のビルドに失敗しました。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】rubyの1e18という数字は何を意味するのか?
-
[解決済み】Rubyで "gets "と "gets.chomp "を使用する方法
-
[解決済み] ルビーオールウェイズ ラウンドアップ
-
[解決済み] ルビー階乗関数
-
[解決済み] nil:NilClass のための未定義のメソッド `+' (NoMethodError)
-
[解決済み] Ruby on railsで改行せずにコンソールに "puts "を使用するにはどうすればよいですか?
-
[解決済み] マトリックスサムネーションチャレンジ
-
[解決済み] Ruby の `print` から bash スクリプトを呼び出して echo するにはどうしたらいいですか?
-
[解決済み] Ruby Net::HTTPの実行期限が切れた
-
[解決済み] ファイルの存在を確認する方法 [重複]について