WA3206

TDD and Pair Programming in JavaScript Training

Test-driven Development (TDD) is a software development process that focuses on writing tests before writing code. This TDD course helps students to ensure that the code is written in a way that is maintainable and extensible using JavaScript with Jest and Pair Programming.
Course Details

Duration

1 day

Prerequisites

Some knowledge of JavaScript is beneficial but not required.

Target Audience

This TDD course is designed for Software Developers, Team Leads, Enterprise Architects, Solution Architects, and Information Technology Architects.

Skills Gained

  • Test JavaScript with Jest
  • Work with Pair Programming
  • Implement TDD and Pair Programming in a JavaScript Project
Course Outline
  • Test-driven Development (TDD)
    • TDD Defined
    • Why TDD
    • TDD Benefits
    • Reframing our Tests
    • Red\Green Testing
    • Unit Tests
    • The 5 Stages
    • BDD Definition
    • Gherkin Format
    • ATDD Definition
    • Comparing TDD, BDD and ATDD
    • ROLES & RESPONSIBILITIES – the three amigos
  • Pair Programming
    • Defined
    • Compliments TDD
    • Type 1: Driver & Navigator
    • Type 2: The Unstructured Style
    • Type 3: Strong Style Pairing
    • Type 4: Ping Pong Pairing
    • Type 5: Backseat Navigator
    • Type 6: Tour Guide
    • Stats
    • Best Practices
    • Benefits
  • Testing JavaScript with Jest
    • Jest Testing Framework
    • Features
    • Installation of Jest
    • A Basic Test
    • Run Test
    • Test Failures
    • Interactive Mode
    • Code Coverage
    • Unit Testing
    • Anatomy of a Unit Test
    • Expectations (Assertions)
    • Common Matchers
    • Combining Tests
    • Testing async code with done
    • Testing Promise Based Async Code
    • Setup and Teardown
    • Setup and Teardown Example
    • Method Stubbing and Call Tracking with Spies
    • A Spy Example
    • spyOn Setup Variations
    • Simulating Exceptions
  • Lab Exercises
    • Lab 1: Pair Programming Exercise
    • Lab 2. Testing JavaScript with Jest
    • Lab 3: TDD and Pair Programming Project