Testing in Agile
                                     Ari Tanninen
                                Agile Dinner Helsinki
 ...
Agenda
                              Introductions
                                Motivation


Wednesday, December 2, 2009
Assumptions

                   • Understanding of software development
                   • Familiarity of agile
        ...
My Biases

                   • Java developer
                   • Object-orientation
                   • Consulting


W...
Everything About
                                   Testing


Wednesday, December 2, 2009
Functional testing...
                   • Black box
                   • White box
                   • Grey box
        ...
Levels of testing...
                   • Unit
                   • Module
                   • Component
                ...
More testing!
                   • Performance, scalability, stability, stress
                   • Destructive
          ...
Wednesday, December 2, 2009
Back to Basics



Wednesday, December 2, 2009
Purposes of Testing

                   • Product validation (the right product?)
                   • Support development...
Wednesday, December 2, 2009




                              Source: Brian Marick, Mary Poppendieck, additions by me
    ...
Agile Needs from
                                    Testing


Wednesday, December 2, 2009
Waterfall


                  Planning    Analysis   Design   Coding   Testing   Deploying   Done!



                    ...
Risk analysis
                                                 Agile
      Test planning             Risk analysis
     Te...
Potentially shippable
                 functionality at the end
                    of every iteration?


Wednesday, Decem...
Wednesday, December 2, 2009




                              Source: Brian Marick, Mary Poppendieck, additions by me
    ...
The Problem

                              Features to be tested




                                                     ...
Test Automation



Wednesday, December 2, 2009
Automated testing?




                          Automated test case execution!



                              Who desig...
Agile Development
                               Up-front
                                           Design must
         ...
The Key to Test
                                    Automation

                       Testing tools?


                  ...
Tests are software, too

                   • Evolution
                   • Architecture & design
                   • It...
Why test-first?

                   • Efficient, least boring way to regression
                   • Minimalism (“do only wh...
Unit Test Driven Development

                              Acceptance Test Driven
                                  Devel...
Challenges to Testing

                   • Changing spec, code, and tests
                   • “Potentially shippable” af...
Tester’s Role Redefined

                   • Acceptance tests, user view of system
                   • Business value foc...
Keys to Agile Testing

                   • Developer testing
                   • Evolving testing tools ➙ programming
  ...
Beer.



Wednesday, December 2, 2009
Upcoming SlideShare
Loading in …5
×

Testing In Agile

1,681 views
1,619 views

Published on

Slides for my presentation about testing in agile projects given December 1st 2009 at Agile Dinner in Helsinki, Finland.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,681
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
75
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Testing In Agile

  1. 1. Testing in Agile Ari Tanninen Agile Dinner Helsinki December 1st 2009 Wednesday, December 2, 2009
  2. 2. Agenda Introductions Motivation Wednesday, December 2, 2009
  3. 3. Assumptions • Understanding of software development • Familiarity of agile • Basic testing know-how Wednesday, December 2, 2009
  4. 4. My Biases • Java developer • Object-orientation • Consulting Wednesday, December 2, 2009
  5. 5. Everything About Testing Wednesday, December 2, 2009
  6. 6. Functional testing... • Black box • White box • Grey box • Regression • Smoke • User Wednesday, December 2, 2009
  7. 7. Levels of testing... • Unit • Module • Component • Integration • System • System integration Wednesday, December 2, 2009
  8. 8. More testing! • Performance, scalability, stability, stress • Destructive • Usability • Security • Exploratory • Monkey Wednesday, December 2, 2009
  9. 9. Wednesday, December 2, 2009
  10. 10. Back to Basics Wednesday, December 2, 2009
  11. 11. Purposes of Testing • Product validation (the right product?) • Support development (built right?) • User / Technology • System / Code Wednesday, December 2, 2009
  12. 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
  13. 13. Agile Needs from Testing Wednesday, December 2, 2009
  14. 14. Waterfall Planning Analysis Design Coding Testing Deploying Done! Risk analysis Test planning Test case design Wednesday, December 2, 2009
  15. 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. 16. Potentially shippable functionality at the end of every iteration? Wednesday, December 2, 2009
  17. 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. 18. The Problem Features to be tested 1 2 3 4 Iteration Wednesday, December 2, 2009
  19. 19. Test Automation Wednesday, December 2, 2009
  20. 20. Automated testing? Automated test case execution! Who designs and automates the test cases? Wednesday, December 2, 2009
  21. 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. 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. 23. Tests are software, too • Evolution • Architecture & design • Iterative & incremental development • Readability (➙DSL) Wednesday, December 2, 2009
  24. 24. Why test-first? • Efficient, least boring way to regression • Minimalism (“do only what is needed”) • “Done” • Design • Collaboration Wednesday, December 2, 2009
  25. 25. Unit Test Driven Development Acceptance Test Driven Development Wednesday, December 2, 2009
  26. 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. 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
  28. 28. Keys to Agile Testing • Developer testing • Evolving testing tools ➙ programming • Lazy & adaptive mindset • Collaboration Wednesday, December 2, 2009
  29. 29. Beer. Wednesday, December 2, 2009

×