Our definition of “agile testing”
Thanks everyone for your input on our original definition. We’ve changed it slightly based on new conversations and comments.
Definition of agile testing: (by Lisa Crispin and Janet Gregory)
Collaborative testing practices that occur continuously, from inception to delivery and beyond, supporting frequent delivery of value for our customers. Testing activities focus on building quality into the product, using fast feedback loops to validate our understanding. The practices strengthen and support the idea of whole team responsibility for quality.
- Building quality in, means teams focus on preventing misunderstandings about feature behavior, as well as preventing defects in the code
- Guiding development with concrete examples, means using practices like ATDD (acceptance test driven development, BDD (behaviour driven development) or SBE (specification by example)
- Testing activities include, but are not limited to: conversations to build shared understanding, asking questions to test ideas and assumptions, automating tests, performing exploratory testing, testing for quality attributes like performance, reliability, security, and learning from production usage.
- The whole team uses retrospectives and small experiments to continually improve testing and quality and find what works in their context.