BDD with Cucumber
3 Days
agileatddgherkinjava
agileautomation
Intermediate
testerdeveloper

More and more organisations are looking to Behaviour Driven Development (BDD) and related practices, as a way to gain or maintain their competitive advantage in software delivery. In this intensive program, participants learn principles and techniques of BDD using Cucumber & Gherkin with Java. Primary focus of program is to allow participants to apply test automation with framework collectively known as BDD test frameworks to adopt test-first method and also, making tests accessible to non-technical users using specification by example. Participants will learn practices to allow writing solid and reliable tests & test code efficiently. Program includes many demonstrations. Participants will have hands-on during program with cucumber, junit and demo for various tests. Test framework concepts are also introduced so that participants can take test automation on another level.

More impotantly, program provides complete understanding of BDD as process and its implementation. All three stages; Discovery, Formulation and Automation are discussed in detail. Open Q&A sessions, demos and hands-on are included throughout the program.

Audience

Program is primarily for developers & testers and any Team member that are directly involved with Test Automation using Java.

Prerequisites

Participant must have beginner level knowledge of Core Java.

Topics

Introduction
  • Testing Fundamentals
  • Types of Tests
  • How to find Test Cases
  • Good Tests
  • Bad Tests
  • Automated Tests
  • What is Behaviour-Driven Development?
  • Living Documentation
  • Specification by Example
  • Discovery
  • Formulation
  • Automation
  • How Cucumber Works
  • Installation
  • First time using Cucumber
  • Creating a Feature
  • Creating Step Definitions
  • Implementing Step Definition
  • Cucumber Output
  • Adding an Assertion
  • Pass It
Gherkin
  • Format and Syntax
  • Feature
  • Scenario
  • Rule
  • Keywords
  • Comments
  • Background
  • Data Table
  • Scenario Outline
  • Doc Strings
  • Tags
  • Using subfolders
More Cucumber
  • Step and Step Definition
  • Mapping
  • Capturing Data
  • Declaring Results
  • Helper Methods
  • Assertions
  • Transformation
  • Sharing State
  • Code Seperation
  • Dependency Injection
  • Refactoring
  • Hooks
  • Polling
  • Data Driven
  • Running Tests
  • Configuration
  • Reporting
  • Test Framework
  • Demo: Selenium Page Objects
  • Demo: API Testing
  • Demo: Library Testing
  • Demo: Extending Cucumber
Improve Tests
  • Shared Environments
  • Leaky Scenario
  • Race Conditions
  • Fixture Data
  • Duplication
  • Collaboration
  • Testability
  • Legacy Code
  • Too Much Info
  • Using Domain Language
  • Defect Prevention

Exclusions

SDLC like Scrum, Test planning & estimation, TDD with Unit Testing.

Anything not mentioned in Topics

Software Requirements

Latest Eclipse (or any other Java IDE) with Cucumber plugin

Internet Requirements

Good unrestricted internet connection is required.

Hardware Requirements

Laptop capable to run MS Office

Classroom Requirements

Projector with HDMI, White Board, Markers with Eraser

Online Requirements

Appropriate meeting software e.g. Zoom, MS Teams Please make sure that camera, speaker and mic are working

If you have any query, please contact now.