This unique course includes an overview of Agile fundamentals followed by a deep dive into Agile testing techniques and the role of the Agile tester. The course can be customized to include intensive hands-on sessions in TDD, ATDD and Mocks.

Course Duration: 5 days
Course Objectives:
  • Gain a basic understanding of Agile
  • Learn the Scrum fundamentals, artifacts and roles
  • Understand the role of a tester on an Agile team
  • Learn the Agile Testing Pyramid
  • Become familiar with Agile testing tools
  • Compare Test-Driven Development (TDD), Acceptance Test-Driven Development (ATDD) and Behavior-Driven Development (BDD)
Course Outline:
  • Agile Overview
    • The Agile Potential
    • The Agile Manifesto
    • Agile Alone is NOT Enough
    • Can Agile Fail?
    • THE Best Agile
  • Scrum Overview
    • Stories – Making It Manageable
      • Stories
      • Acceptance Criteria
      • Object-Oriented Principles and Agile
      • Sprint Planning Meeting
      • Just Enough and No More
      • Controlling Chaos
    • Sprint
      • Creating a Sense of Urgency
      • Driving Your Project
      • Conducting the Daily Scrum
      • Chickens and Pigs
      • Life Is Daily!
      • Doing Iterative Development
      • Design
      • Test
      • Code
      • Refactor
      • Sprint Review Meeting
    • Product Owner: Roles and Responsibilities
      • Requirements and the Product Backlog
        • Building a Product Backlog
        • User Roles and Personas
        • Acceptance Criteria
        • Story Workshops
        • Story Aggregation and Decomposition
        • Spikes and Special Stories
      • Agile Tester Roles and Responsibilities
        • Overlapping Roles
        • Testers On the Team
        • Test Plans
        • The End Game
      • Whole Team Approach
        • Team Commitment to Quality
        • Teams Test
        • Pairing Testers and Developers
      • The Agile Testing Pyramid
        • Agile Testing Quadrants
        • Unit Test
        • Acceptance Test
        • GUI Test
        • Manual Test
      • Overview of Test Automation and Automation Tools
        • JUnit and Testing First (TDD)
        • Continuous Integration
        • Acceptance Testing (ATDD)
        • Behavior-Driven Development (BDD)
        • Brief Overview of Tools
          • Cucumber, easyB
          • Selenium
          • Jenkins/Hudson
          • Sonar
        • Exploratory Testing
          • Exploratory versus Scripting
          • Concurrent Design and Execution
          • Motivation for Exploratory Testing
        • Test-Driven Development (TDD)
          • Definitions and Uses of TDD
          • Principles and Techniques of TDD
          • Benefits of TDD
          • Best Practices in TDD
          • TDD Anti-Patterns
        • Mock Objects
          • Motivation for Mock Objects
          • Test Fakes, Stubs, Doubles
          • Collaborating Objects
          • Suggested Tools
        • Acceptance Test-Driven Development (ATDD)
          • Choose Your Story
          • Writing Test(S) for Your Story
          • Consider Automating the Tests
          • Implementing the Functionality
            • The ATTD Micro-Cycle
            • To Mock or Not To Mock
          • What Can Go Wrong?
            • Iteration Planning
            • Epic Planning
            • Managing Scope
          • Knowing When You’re Done