0

キュウリを使用して Rails アプリケーションをテストしています。

フォームに記入するために、キュウリの「記入」ステップを使用しています。

When /^(?:|I )fill in "([^"]*)" with "([^"]*)"(?: within "([^"]*)")?$/ do |field, value, selector|
  with_scope(selector) do
    fill_in(field, :with => value)
  end
end

ページがあり、「メール アドレス」に「example@example.com」を入力したいと考えています。

「メールアドレス」に「example@example.com」と入力すると

しかし、ページの1つで次のエラーが発生します。

ID、名前、またはラベル「メールアドレス」を含むテキストフィールド、テキストエリア、またはパスワードフィールドが見つかりません (Capybara::ElementNotFound)

HTMLコードに何が欠けているかというアイデアはありますか? または問題は一致しないバージョンにありますか?

これは、エラーが発生しているページの html コードの一部です。

<p class=" medium text email_wrapper required">
 <label for="user_email">Email Address<span class="required">*</span></label> <br />
 <input class=" medium text" id="user_email" name="user[email]" size="30" type="text" /><br />
 <span class=" note">Must be valid. Privacy is guaranteed.</span>
</p>
4

2 に答える 2

0

ラベル内のこのhtmlは、マッチャーを混乱させる可能性があります。

<span class="required">*</span>

代わりに、フィールドのIDを指定できます。

When I fill in "user_email" with "example@example.com"
于 2012-06-22T13:58:02.030 に答える
0

あなたの正規表現が有効であると確信していますか? うまくいかないようです。http://rubular.com/r/RUIKYIk5Wb

于 2012-04-25T19:19:19.740 に答える