Who Should Attend?
- This course is suitable for newcomers to BDD and Cucumber.
A basic understanding of writing Selenium WebDriver Scripts is required. Some programming experience would be advantageous – the course is based on using WebDriver with Java & Junit, but does not teach you Java as you can use a variety of programming languages with WebDriver and Cucumber.
Exam Details
There is no exam as part of this course.
Objectives
- Understand the required installs and libraries to use Cucumber
- Understand how to structure your automated Cucumber project
- Gain a full understanding of how to write good Gherkin and Step Definitions
- Understand how re-factor and re-use common methods for Steps
- By the end of the course you should have a thorough understanding of how to develop well-written Feature Files and Scenarios, How to manage Step Definitions and write associated Methods, how to organise the Cucumber project and how to integrate into the POM framework
Select a date
Please note: this course runs on demand so the price is TBC. It can be arranged to run on-site at your offices as Training for Teams or as a public course if there is sufficient interest.
Please contact us for more details.
Course Content and Agenda
This course covers nine key areas over two days:
- A background to BDD and its benefits
- The process of BDD
- An overview of the tools available and terminology
- Feature files
- Introduction to the Gherkin language, basic syntax
- Using the background fixture
- Parameters
- Doc strings
- Examples and data tables
- Using tags to organise execution
- Commenting
- Cucumber Eclipse plugin
- Adding the Maven Project dependencies
- Creating a project structure
- Creating a feature
- Formatting and execution of feature files
- Creating our Test Classes
- Using prototype step definitions
- Fixing errors for executing feature files
- Creating step definition Methods
- Expanding Methods with Parameters
- Step Definition syntax
- Using Regular Expressions
- Scenario Outline
- In-line Step Table Iterating
- Using multiple annotations for one Method
- Re-using Methods for more than one Scenario
- Using Cucumber
- Creating a Junit Runner Class
- Using Tags
- Results & Reporting
- Using Cucumber & WebDriver under the Page Object Model
- Using Base Classes & Inheritance
- Command line execution