Lean-Agile Testing Practices
Abstract
- Examine how Lean Principles apply to your Quality Assurance goals and activities
- Learn Agile Testing Practices needed to quickly deliver the highest value to your customers
- Discover solutions to your Lean-Agile Testing challenges
- Recognize Lean opportunities for change in your organization
- Respond and adapt to Agile development changes effecting your team
- Evaluate and implement Lean-Agile Testing Practices for your team across the whole release cycle
- Evaluate FitNesse as an automated acceptance testing tool solution for your team
- Respond and recommend Agile Testing transitioning solutions
Quickly deliver the highest value features to the customer
Lean-Agile methods promote the rapid delivery of value to the customer. One way they do this is to defer detailed definition and design of system features until the “last responsible moment.” This challenges the whole team to stay continuously synchronized within very short iteration cycles. The team must be creative, smart, and efficient with their verification and validation testing activities.
Lean principles add value to your organization
Examine Agile testing practices such as Exploratory Testing, and Acceptance Testing. Experience the Four-Hour Release and practice the activities important to testers. Teams new to Agile or exploring Agile have discovered moving from traditional “test last” to the Lean-Agile “test first” can be a big challenge to the team or organization, but in particular for test engineers. We will examine and identify these common obstacles facing teams and discuss solutions that could work for your team.
Course Length
2 daysCourse Level
IntermediateCourse Outline
The Power of Lean and the Applicability to Quality Assurance
- Introduction to Lean – Learn what are the seven principles are and how they apply to your team and organization
- Introduction to seven Lean QA practices - Continuous Test-Driven Integration (Test Driven Design and Unit Testing, Continuous Integration, Code Quality, Mindful QA, Test-Focused, not Defect-driven, Smart Metrics, Agile Verification & Validation, (Acceptance, Exploratory, System Testing), and Lean-Agile Quality Planning
- Exercise: Break into groups and examine Lean-Quality Assurance practices.
How Agile Changes Requirements and Testing
- Requirements Definition - Use Cases, User Stories, finding the right level of specification
- What is Agile Testing and how is it different from traditional?
- Test Artifacts: Test Plan, Test Cases, Test Notes, Story Tests, Test Scripts, Acceptance Tests (Customer/Business Facing, Technology Facing), Regression, Performance, Security…
- Manual vs automated testing decisions
- Agile Team case study
- Mike Cohn’s Testing Pyramid
- Automated testing tools– open source or purchased, GUI?
- Exercises: User Story, Agile Testing
Agile Testing Practices for Speed of Need
- Exploratory Testing
- Quick Explore
- Blink
- Session-Based
- Release Explore
- Exercises: Blink, Release Explorathon
- Acceptance testing
- Applying normal testing patterns to improve acceptance testing
- Using FitNesse for automated acceptance testing
- Exercise: Writing Acceptance Testing using FitNesse
Practice Agile Testing Activities via the 4-Hour Release
- Release Planning Activities/Practices/Tools
- Understand & size Stories
- Test Planning – goals and acceptance criteria for release
- Exercise: Do a Release Planning session with your group
- Iteration Planning Activities/Practices/Tools
- Understand & Clarify Stories
- Estimate Testing Tasks
- Test Plan for Iteration – goals and acceptance criteria
- Exercise: Do an Iteration Planning session with your group
- Iteration Activities/Practices/Tools
- Writing Acceptance tests
- Exploratory Testing
- Tracking testing progress
- Exercise: Do an Iteration session with the team using FitNesse for Acceptance Testing
- Iteration Acceptance & Review
- Demo Acceptance tests
- Retrospective
- Exercise: Do an Iteration Acceptance and Review session with your group
- Release Activities/Practices/Tools
- Staging to Production activities – integration testing, other testing?
- Release Explorathon
- Hardening Iteration?
- Exercise: Do a Release session with your group
- Release Acceptance
- Reporting/Metrics
- Retrospective
- Exercise: Do a Release Acceptance and Retrospective session with your group
Agile Testing Transitions & Challenges
- People challenges discussions and suggestions
- Exercise: Discussion in your group and possible solutions posted
- Technical challenges discussions and suggestions
- Exercise: Discussion in your group and possible solutions posted
- Organization challenges discussions and suggestions
- Exercise: Discussion in your group and possible solutions posted
- Lean-Agile Testing transitions
Look Back, Look Ahead
- Where did we start, where are we now
- Where to go for help
- Lean-Agile Testing Action Plan
Who is this course for
Test professionals, quality assurance engineers and managers, project managers, quality analysts, and developers who want to understand how to make testing more effective in an agile environment.Equipment
A laptop or desktop computer is needed for every participant. Installation of JRE 1.5 is recommended, but it will be available for installation.Prerequisites
No specific prerequisites are assumed. Experience in any form of software development (testing, programming, managing), some familiarity with Agile practices.