Projeto: Vermelho

logs of development
スポンサーサイト

一定期間更新がないため広告を表示しています

| - | | - | -
fill_inを使ったステップでCapybara::ElementNotFound
cucumberでフォームを埋めるシナリオをテストするのだが、どうしても、fill_inでfailerになって進まない.なぜ?

Then I fill in "message" with "good"

cannot fill in, no text field, text area or password field with id, name, or label 'message' found (Capybara::ElementNotFound)
      (eval):2:in `fill_in'
      ./features/step_definitions/web_steps.rb:61:in `/^(?:|I )fill in "([^"]*)" with "([^"]*)"$/'
      features/manage_objects.feature:9:in `And I fill in "message" with "good"'

テキストエリア等について、id, name, or labelを使えと言っている.使ってるじゃん.と思いながら、解決を探していたら、こんな解説見っけ.

テキストフィールドやsubmiボタンの名前をブラウザのソースでみつけたid名にしたみたわけなんだけど。
http://michitoshi.blogspot.com/2010/12/cucumbermessagefeaturerails3.html

ん!?ブラウザでチェック?
同じことをしてみたら…テキストエリアにIDが着いてて、"model_fieldname"になってる(^_^;.知らなかった….
その名前を使ってステップを書き直した.

Then I fill in "object_massage" with "good"

通りました(T_T).
| cucumber | 17:57 | comments(0) | trackbacks(0)
Ambiguous match of ...
web_steps.rbにすでに存在する場合はあらためて書く必要ないらしい
http://markmail.org/message/qekq3itofdv2ikbj
    Given I am on the new moso page   # features/manage_mosos.feature:7
      Ambiguous match of "I am on the new object page":
     
      features/step_definitions/moso_steps.rb:1:in `/^(?:|I )am on (.+)$/'
      features/step_definitions/web_steps.rb:44:in `/^(?:|I )am on (.+)$/'
     
      You can run again with --guess to make Cucumber be more smart about it
       (Cucumber::Ambiguous)
      features/manage_mosos.feature:7:in `Given I am on the new moso page'

    And I press "Create"              # features/manage_mosos.feature:10
      Ambiguous match of "I press "Create"":
     
      features/step_definitions/moso_steps.rb:9:in `/^I press "([^"]*)"$/'
      features/step_definitions/web_steps.rb:52:in `/^(?:|I )press "([^"]*)"$/'
     
      You can run again with --guess to make Cucumber be more smart about it
       (Cucumber::Ambiguous)
      features/manage_mosos.feature:10:in `And I press "Create"'

| cucumber | 07:21 | comments(0) | trackbacks(0)