Upgrading Cucumber on Existing Rails Application

If you are upgrading cucumber gem on existing rails applications, sometimes you meet error on doing cucumber test.

You can fix the errors by doing this step-by-step:
If you are seeing conflicting files, don't overwrite, but diff them first.

From cucumber 0.3.x to < 0.4.3
ruby script/generate cucumber


From cucumber 0.4.3 to > 0.4.3
ruby script/generate cucumber

From cucumber < 0.5.0 to > 0.5.0
sudo gem install cucumber-rails
rm features/support/version_check.rb
cp features/step_definitions/webrat_steps.rb features/step_definitions/backup_webrat_steps.rb
rm features/step_definitions/webrat_steps.rb
ruby script/generate cucumber
Merge your changes on features/step_definitions/webrat_steps.rb to features/step_definitions/web_steps.rb
Then you can safely remove webrat_steps definition.
rm features/step_definitions/backup_webrat_steps.rb
If you are seeing warning messages indicating deprecated feature, comment this line on features/support/env.rb
require 'cucumber/webrat/element_locator' # Deprecated in favor of #tableish - remove this line if you don't use #element_at or #table_at
You have to install database_cleaner gem too.
sudo gem install database_cleaner

Cucumber test output in html format is really nice.


You can produce test result in html format:
cucumber features -f html > somefilename.html

0 comments:

Post a Comment