Live Chat
Monday - Friday 8am - 6pm EST Chat Now
Contact Us
Monday - Friday 8am - 8pm EST 1-800-268-7737 Other Contact Options

Cart () Loading...

    • Quantity:
    • Delivery:
    • Dates:
    • Location:


Using Cucumber

This course will cover how to create features and scenarios and steps using Cucumber-Ruby.

GK# 7363

Course Overview


Cucumber is a tool that supports behavior-driven development. Stakeholder requirements can be specified using plain text within features and scenarios, which can then be used for automated testing during development and for documentation when the product has been developed. While scenario steps are generated using plain text with a structure provided by a syntax called Gherkin, the steps that make up the scenarios are matched with step definitions coded in the language of the underlying platform. Cucumber is implemented for a number of different platforms including Ruby, Ruby on Rails, Java, Clojure, and Python. This course will cover how to create features and scenarios and steps using Cucumber-Ruby. You will learn how to optimize and organize features and scenarios, and how to work with message queues, asynchronous behavior, and databases. You'll also learn how to test REST APIs using Cucumber, and how to troubleshoot Cucumber scenarios.


  • Delivery Format:
  • Date:
  • Location:
  • Access Period:


What You'll Learn


Cucumber Fundamentals


Viewing outline for:

On-Demand Outline

Cucumber Fundamentals

  • Identify how Cucumber works, list the available versions, and describe how you can install Cucumber for use with Ruby
  • Generate Cucumber features and scenarios using Cucumber-Ruby and Gherkin syntax
  • Use regular expressions to create step definitions in Cucumber scenarios
  • Run Cucumber scenarios and show how to use the progress formatter for more focused output
  • Use assertions in Cucumber scenarios
  • Use features such as capture groups, wildcards, and multiple arguments in Cucumber steps
  • Describe the available result states for a Cucumber scenario and provide examples of scenarios containing steps that lead to these results
  • Use a background section in a Cucumber feature file to outline steps common to all scenarios
  • Use doc strings and data tables for data that doesn't fit on one line in Cucumber scenarios
  • Use scenario outlines to define steps for Cucumber scenarios
  • Nest steps in Cucumber scenarios
  • Use transforms to remove duplication in Cucumber step definitions
  • Describe the Cucumber World object and refactor steps into Ruby helper methods that are added to the World
  • Describe the uses for tags and tag Cucumber scenarios at feature and scenario level
  • Group Cucumber features in subfolders and run a feature from a subfolder
  • Filter Cucumber scenarios to run a subset using tags or lines
  • Use hooks in Cucumber scenarios
  • Modify the default output from Cucumber using formatters such as progress, rerun, usage and stepdef, formatting to file, and use the backtrace option
  • Store Cucumber command line options in a YAML file and use the profile option to run them
  • Handle asynchronous systems in Cucumber scenarios
  • Introduce ActiveRecord, refactor a Cucumber scenario to use data, and read and write data to a database
  • Use transactions and truncation to clean databases for Cucumber scenarios
  • Test Representational State Transfer application program interfaces or REST APIs with Cucumber
  • Identify issues in Cucumber scenarios such as flickering scenarios; brittle and slow features; and unengaged stakeholders, identify underlying causes, and provide solutions
  • Create Cucumber scenarios for an app



Software testing is critical to the development of quality software applications. This path describes the different testing methodologies, and the steps involved in creating, managing and automating software tests. This SkillSoft learning path covers the objectives for the Microsoft Technology Associate (MTA) exam 98-379, Software Testing Fundamentals.

Who Should Attend


Developers familiar with Ruby, who want to use Cucumber to create text-based feature requirements and documentation and run automated acceptance tests.

Course Delivery

This course is available in the following formats:


Train at your own pace with 24/7 access to courses that help you acquire must-have technology skills.

Request this course in a different delivery format.