This page lists all content tagged with the term "BDD".

Declare or Impair

A topic that crops up often on the Cucumber mailing list is whether it's best to write BDD tests in imperative or declarative style.


Cukable is a compatibility layer between FitNesse and Cucumber that allows you to run Cucumber test scenarios, and view their results, directly within FitNesse.


$ gem install cukable
Execution summary of a full suite
More than one scenario in a table
Undefined steps are colored yellow
What happens when a step fails
Cucumber tables embedded in FitNesse tables
Scenario outlines with example tables
Multi-line string arguments for various step statuses


Kelp is a library of Ruby helpers for Cucumber, making it easier for you to write your own step definitions built upon common webpage interactions like "follow link" or "fill in fields", and assertions like "should see" or "should not see".


$ gem install kelp

Visit the #kelp channel on to chat.

To Selenium or Not To Selenium?

I've been using Capybara with the Selenium driver for automated testing of a Rails project via Cucumber. Certain scenarios involve dealing with client-side Javascript (such as confirming a popup message before deleting a record), which is the reason I started using the Selenium driver. But I soon discovered that Selenium is slow, taking three or four times as long as the standard Rack-test driver.

Racking my brains

I'm using Cucumber and Capybara for integration testing on a web application that depends heavily on the use of subdomains. Since some features rely on client-side Javascript, some scenarios use the Selenium 2 (WebDriver) driver, while other scenarios use the regular rack-test driver.


We redesigned this web application using Ruby on Rails, to replace a legacy MS Access system which our client found too limiting and difficult to maintain. This application is for maintaining a database of employment statistics based on a monthly survey, and generating periodic reports of the expected fluctuations in various job markets. We designed the new application using a business-driven development (BDD) approach, writing test scenarios in Cucumber prior to developing each feature.

Syndicate content