2010-01-25 4 views
0

Je suis nouveau à Cucumber et j'ai franchi les rails de Ryan Bates. http://railscasts.com/episodes/155-beginning-with-cucumberRails/Cucumber/Webrat: redirect_to, flash [: avis] ne fonctionne pas

Malheureusement, mon scénario échoue là où le rail passe. Plus précisément, il échoue sur l'étape: Then I should see "New Article Created."

Je suppose qu'il peut avoir quelque chose à voir avec les différentes versions des gemmes que nous utilisons, actuellement, j'ai le dernier de chacun.

Il me donne l'erreur suivante:

* Je devrais voir "Nouvel article créé." attend le contenu de l'élément suivant pour inclure "nouvel article créé.":

Title 
Content 

(Spec :: attentes :: ExpectationNotMetError) ./features/step_definitions/web_steps.rb:144:in /^(?:|I)should see "([^\"]*)"$/' features/manage_articles.feature:18:in alors je devrais voir "le nouvel article créé" '*

Ceci est la source:

manage_articles.feature

Feature: Manage Articles 

     Scenario: Create Valid Article 
     Given I have no articles 
     And I am on the list of articles 
     When I follow "New Article" 
     And I fill in "Title" with "Spuds" 
     And I fill in "Content" with "Delicious potatoes" 
     Then I should see "New Article Created." 
     And I should see "Spuds" 
     And I should see "Delicious potatoes" 
     And I should have 1 article 

articles_controller.rb

... 
    def create 
    @article = Article.create!(params[:article]) 
    flash[:notice] = "New Article Created." 
    redirect_to articles_path 
    end 

index.html.erb

<p><%= flash[:notice] %></p> 
<% for article in @articles %> 
    <p><%=h article.title %></p> 
    <p><%=h article.content %></p> 
<% end %> 

<%= link_to "New Article", new_article_path %> 

Répondre

1

Je pense que vous devez ajouter cette ligne avant Then I should see "New Article Created.":

And I press "Create" 

Alors, voici votre scénario complet:

Feature: Manage Articles 

     Scenario: Create Valid Article 
     Given I have no articles 
     And I am on the list of articles 
     When I follow "New Article" 
     And I fill in "Title" with "Spuds" 
     And I fill in "Content" with "Delicious potatoes" 
     And I press "Create" 
     Then I should see "New Article Created." 
     And I should see "Spuds" 
     And I should see "Delicious potatoes" 
     And I should have 1 article 
+0

Merci! Erreur muette de ma part. – Evan

5

Une bonne astuce pour le débogage du concombre est de créer des étapes de débogage.

Dans un fichier debug_steps.rb je donne les résultats suivants:

Then /^I debug$/ do 
breakpoint; 0 
end 

Then /^I open the page$/ do 
    save_and_open_page 
end 

Notez que save_and_open_page exige: Webrat: Webrat (0.5.3) et Launchy: Launchy (0.3.3)

ajouter ensuite l'étape:

Then I open the page

avant Then I should see "New Article Created."

Pour voir ce qui se passe.

Bonne chance. J'espère que cela t'aides.

+0

Merci! Si j'avais cela, je n'aurais pas besoin de poster. – Evan

+0

Merci beaucoup pour ces conseils !! – benoitr

Questions connexes