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
- Requirements and the Product Backlog
- Stories – Making It Manageable