On 20 May 2009, at 16:43, Zhenning Guan wrote:
I have a controller name forums and a action like this: def show redirect_to forum_topics_path(:forum_id => params[:id]) end my scenario is (not completed) ========== Scenario: User input data correct When I run to the forum 1 -- When /^I run to the (.*)$/ do |topic_lists| visit path_to(topic_lists) end def path_to(page_name) case page_name when /forum 1/ forum_path(1) ========== when I runned rake features got a error.. ++++++++++++++++ Scenario: User input data correct # features/forums.feature:10 When I run to the topic lists # features/step_definitions/forums_steps.rb:10 Couldn't find Forum with ID=1 (ActiveRecord::RecordNotFound) /home/ning/blank/app/controllers/topics_controller.rb:71:in `load_forum' /usr/lib/ruby/1.8/benchmark.rb:308:in `realtime' (eval):2:in `/^I run to the (.*)$/' features/forums.feature:11:in `When I run to the topic lists' ++++++++++++++++++ so is that redirect_to problems? how to implement the scenario? any thought here?
You are trying to visit the page for a 'forum' object (with ID=1) that does not exist in your database.
In each scenario, you need to imagine your application starts from a completely empty state, just like it would if you started the application with script/server.
You need a step in your scenario that says 'Given there is a Forum' which creates the record in the database.
If you don't mind me saying so, this question suggests to me that you have quite a bit to learn about Cucumber. While people on this list are pretty patient and helpful, they are also busy and will be more keen to help if you spend some time helping yourself too. I suggest you start with the recent railscast on Cucumber.
Matt Wynne http://blog.mattwynne.net http://www.songkick.com _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users