11. Purposes of Testing
• Product validation (the right product?)
• Support development (built right?)
• User / Technology
• System / Code
Wednesday, December 2, 2009
12. Wednesday, December 2, 2009
Source: Brian Marick, Mary Poppendieck, additions by me
http://www.exampler.com/old-blog/2003/08/21/#agile-testing-project-1
http://stopandfix.blogspot.com/2009/04/all-about-testing.html
14. Waterfall
Planning Analysis Design Coding Testing Deploying Done!
Risk analysis
Test planning
Test case design
Wednesday, December 2, 2009
15. Risk analysis
Agile
Test planning Risk analysis
Test case design Test planning
Test case design
Planning Analysis Design Coding Testing Deploying Done!
Planning Analysis Design Coding Testing Deploying Done!
Planning Analysis Design Coding Testing Deploying Done!
Planning Analysis Design Coding Testing Deploying Done!
Risk analysis
Test planning
Test case design Definition of done: tested
Wednesday, December 2, 2009
16. Potentially shippable
functionality at the end
of every iteration?
Wednesday, December 2, 2009
17. Wednesday, December 2, 2009
Source: Brian Marick, Mary Poppendieck, additions by me
http://www.exampler.com/old-blog/2003/08/21/#agile-testing-project-1
http://stopandfix.blogspot.com/2009/04/all-about-testing.html
18. The Problem
Features to be tested
1 2 3 4
Iteration
Wednesday, December 2, 2009
20. Automated testing?
Automated test case execution!
Who designs and automates the test cases?
Wednesday, December 2, 2009
21. Agile Development
Up-front
Design must
design
evolve
impossible
Iterative and Regression Test
incremental Refactoring testing automation
development
Features Test-first
added, Changing development
changed, codebase
removed
Tests, too!
Wednesday, December 2, 2009
22. The Key to Test
Automation
Testing tools?
Software development
http://stopandfix.blogspot.com/2009/03/key-to-test-automation.html
Wednesday, December 2, 2009
23. Tests are software, too
• Evolution
• Architecture & design
• Iterative & incremental development
• Readability (➙DSL)
Wednesday, December 2, 2009
24. Why test-first?
• Efficient, least boring way to regression
• Minimalism (“do only what is needed”)
• “Done”
• Design
• Collaboration
Wednesday, December 2, 2009
25. Unit Test Driven Development
Acceptance Test Driven
Development
Wednesday, December 2, 2009
26. Challenges to Testing
• Changing spec, code, and tests
• “Potentially shippable” after every iteration
• Usability & property testing
• Tester’s role
Wednesday, December 2, 2009
27. Tester’s Role Redefined
• Acceptance tests, user view of system
• Business value focus, PO liaison
• Exploratory testing & the difficult stuff
• Thinking, contributing team member
• Learn programming, train developers
Wednesday, December 2, 2009