0

次の生成された HTML コードがあります。

    <label for="place_type_id">Type</label><br />
    <select id="place_type_id" name="place[type_id]"><option value="1">Restaurant</option>
<option value="2">Cafe</option>
<option value="3">Club</option></select>

RSpec テスト用にいくつかのオプションを選択する必要があります。

  select "Club", from: "place[type_id]"

しかし、うまくいきません。どうすれば修正できますか?「from」パラメーターで「name」の代わりに「id」を使用しようとしましたが、うまくいきません。

4

1 に答える 1

0

選択ボックスは名前、ID、またはラベルテキストで見つけることができるように見えるので、あなたの例はうまくいくように見えます. Capybara::Node::Actionsから:

ページで選択ボックスを見つけて、そこから特定のオプションを選択します。選択ボックスが複数選択の場合、select を複数回呼び出して複数のオプションを選択できます。選択ボックスは、その名前、ID、またはラベル テキストを介して見つけることができます。

しかし、明らかに何かを見落としています。角括弧がカピバラを脱ぎ捨てているのではないでしょうか?ラベル テキストで選択するとどうなるかを確認してください。

select 'Club', from: 'Type'

または ID:

select 'Club', from: :place_type_id
于 2013-10-07T12:18:24.287 に答える