2011-09-19 6 views
0

https://stackoverflow.com/questions/5282437/cucumber-pickle-factory-girl-given-a-returning-undefined-step - ce message ne m'a pas beaucoup aidé.Step Undelefined Pickle (nouveau)

Gemfile:

gem 'rails' # 3.0.5 
gem 'capybara' # 1.1.1 
gem 'rspec-rails' # 2.6.1 
gem 'cucumber-rails' # 1.0.5 
gem 'database_cleaner' 
gem 'factory_girl_rails' # 1.2.0 
gem 'email_spec' 
gem 'pickle' # 0.4.8 

je fais:

rails new pickle_test 
bundle install 
rails g cucumber:install 
rails g rspec:install 
rails g pickle --paths --email 
rails g scaffold category title:string 
rake db:migrate 
rake db:test:prepare 
cucumber 

Je:

$ cucumber 
Using the default profile... 
Feature: Manage categories 

    Scenario: list existed categories      # features/manage_categories.feature:3 
    Given a category exists, title: "First category ever" # features/manage_categories.feature:4 
     Undefined step: "a category exists, title: "First category ever"" (Cucumber::Undefined) 
     features/manage_categories.feature:4:in `Given a category exists, title: "First category ever"' 
    When I go to the categories page      # features/step_definitions/web_steps.rb:48 
    Then I should see "First category ever"    # features/step_definitions/web_steps.rb:105 

1 scenario (1 undefined) 
3 steps (2 skipped, 1 undefined) 
0m0.127s 

You can implement step definitions for undefined steps with these snippets: 

Given /^a category exists, title: "([^"]*)"$/ do |arg1| 
    pending # express the regexp above with the code you wish you had 
end 

Notez que je ne faisais rien à configurer cette application de test de toute façon et je ne pas utiliser factory_girl ou quoi que ce soit plutôt qu'ActiveRecord. Je suis convaincu que cela devrait fonctionner à partir de là. Pickle lui-même est chargé (testé avec put), concombre s'exécute en utilisant environments/test.rb.

Qu'est-ce qui me manque?

Répondre

0

Votre étape def n'utilise pas la phraséologie correcte.

Les étapes de conserves au vinaigre par défaut (vous devriez vous sentir libre de les adapter à votre application/style) attendent les suivantes:

Étant donné une catégorie existe avec le titre: « Première catégorie jamais »

Cheers, Ian

+0

Désolé pour un retour tardif. Il dit la même chose même si je suis le guide: Vous pouvez implémenter des définitions d'étapes pour les étapes non définies avec ces extraits: Étant donné que/^ une catégorie existe avec le titre: "([^"] *) "$/do | arg1 | en attente # Exprimez l'expression rationnelle ci-dessus avec le code que vous souhaitez avoir. fin – denmarkin

+0

La question est classée - le problème était dans FactoryGirl. – denmarkin