title
Please take a moment to fill out this form. We will get back to you as soon as possible.
All fields marked with an asterisk (*) are mandatory.
Behavior Driven Development with Cucumber
Course Description
Overview
Behavior-Driven Development (BDD) employs the approach of specification by example, requiring the team to create specific examples identifying what the system should do from the user’s perspective.This course is valuable for teams who are: adopting Behavior Driven Development (BDD); considering Cucumber as its acceptance test tool; or updating skills to include an increasingly popular practice and tool. Attendees will discover that Cucumber’s ability to map stories and acceptance criteria to automated functional tests makes it an ideal BDD tool. The combination of instruction and application in this class will prepare your team for success in implementing and executing tests using Cucumber.
This course is considered a Private versions that can be done with the Java or .NET versions of Cucumber.
Objectives
- Distinguish between BDD and other kinds of agile testing
- Describe the individuals involved in BDD and their interactions
- Explain why Cucumber is well-suited to BDD
- Refactor Cucumber scenarios to improve expressiveness and make them more readable and maintainable
- Automate Cucumber steps to drive your application both through and below the user interface
- Refactor Cucumber step definitions to make them more readable and maintainable
- Write expressive Cucumber scenarios using business domain language
- Find and install the appropriate version of Cucumber for your platform (i.e. Ruby, Java, or .Net)
Audience
Prerequisites
-
None
Topics
- Test-driven Development with RubyMine
- What is RubyMine?
- What is TDD?
- Introduction to TDD/ATDD
- Why use TDD/ATDD?
- Introduction to BDD
- What is BDD?
- How does BDD benefit me as a Testing Professional
- LESSON 1:
- What is Cucumber (QCumber)?
- Why use Cucumber for Testing
- LESSON 2:
- Understanding Cucumber Software
- Introduction to Cucumber features
- Introduction to the structure of a Cucumber Project
- LESSON 3:
- Getting started with Cucumber
- Introduction to Scripts
- Writing your first script
- Executing Cucumber Scripts
- LESSON 1:
- What are Cucumber Scenarios?
- Introduction to Scenarios in Cucumber
- LESSON 2:
- Understanding the Test Frameworks (Rails)
- Introduction to Cucumber and WebApps
- How to test a Web App using Cucumber.
- Introduction to Refactors
- Verifying test results
- Mocks & Stubs
- Cucumber and Databases
- LESSON 1:
- What is Ruby?
- Overview of Ruby Development.
- How to Install Ruby?
- LESSON 2:
- Ruby from the point of view of the “TESTER”
- LESSON 3:
- Introduction to the Ruby Programming Environment
- What are blocks?
- LAB: My First Ruby Program
- LESSON 1:
- Introduction to SOA.
- Introduction Modules.
- What is a Classes?
- LESSON 2:
- Common Standard Library Classes
- Control Structures
- LESSON 3:
- Introduction to Ruby Scope
- Global Scopes
- Global Variables
- Local Scopes
- Local variables
- Using Modules to control scope.
- Inheritance
- Inheritance and Instance Variables
- Overriding Methods
- Usage of super
- Redefining methods
- Abstract Class
- Ruby Overloading Methods
- Object Serialization
- Modules/Mixins
- Self
- Top level context
- Self inside class and module definitions
- Self in instance method definitions
- Self in singleton-method and class-method definitions
- Constants
- What is Rails?
- What is Ruby on Rails?
- Rails-flavored Ruby
- Motivation for using Rails-flavored Ruby
- LESSON 1
- Strings and methods
- Comments
- Strings
- Objects and message passing
- Method definitions
- Back to the title helper
- LESSON 2
- Other data structures
- Arrays and ranges
- Blocks
- Hashes and symbols
- CSS revisited
- LESSON 3
- Ruby classes
- Constructors
- Class inheritance
- Modifying built-in classes
- A controller class
- A user class
- Using Breakpoints
- Difference between or and || operator
- Fun with Strings
- Variables and Assignment
- LESSON 1
- Scope
- Global scope and global variables
- Built-in global variables
- Local scope
- LESSON 2
- Introduction to Ruby Methods
- Understanding Methods
- Creating a Ruby Methods
- LESSON 3
- Introduction to Strings
- Listing all methods of a class or object
- Comparing two strings for equality
- Using %w
- Character Set
- Character Encoding
- Encoding class
- Introduction to Ruby Constructs
- Conditional
- Statement modifiers
- Case Expressions
- nil is an Object
- Difference between FALSE and NIL
- Ruby Arrays
- Parallel Assignment
- Environment Variables
- Command line arguments
- Library GetoptLong
- Ranges
- Ruby Symbols
- Hashes
- Using Symbols as Hash Keys
- Random Numbers
- Read/Write files
- Traversing Directory Trees
- Random Access
- Regular Expressions
- Literal characters
- The wildcard character . (dot)
- Character classes
- Special escape sequences for common character classes
- Writing our own Class
- Literal Constructors
- Garbage Collection
- Class Methods
- Method Missing
- Ruby Procs
- Including Other Files
- Ruby Open Classes
- Inheritance
- Inheritance and Instance Variables
- Overriding Methods
- Usage of super
- Redefining methods
- Abstract Class
- Ruby Overloading Methods
- Access Control
- Overriding private methods
- Top-level methods
- Are instance variables inherited by a sub-class?
- Exceptions
- Raising an Exception
- Handling an Exception
- Validation example
Self-Paced Training Info
Learn at your own pace with anytime, anywhere training
- Same in-demand topics as instructor-led public and private classes.
- Standalone learning or supplemental reinforcement.
- e-Learning content varies by course and technology.
- View the Self-Paced version of this outline and what is included in the SPVC course.
- Learn more about e-Learning
Course Added To Shopping Cart
bla
bla
bla
bla
bla
bla
Self-Paced Training Terms & Conditions
Exam Terms & Conditions
Sorry, there are no classes that meet your criteria.
Please contact us to schedule a class.

STOP! Before You Leave
Save 0% on this course!
Take advantage of our online-only offer & save 0% on any course !
Promo Code skip0 will be applied to your registration
Purchase Information
title
Please take a moment to fill out this form. We will get back to you as soon as possible.
All fields marked with an asterisk (*) are mandatory.