SlideShare a Scribd company logo
1 of 29
Download to read offline
Testing in Agile
                                     Ari Tanninen
                                Agile Dinner Helsinki
                                 December 1st 2009




Wednesday, December 2, 2009
Agenda
                              Introductions
                                Motivation


Wednesday, December 2, 2009
Assumptions

                   • Understanding of software development
                   • Familiarity of agile
                   • Basic testing know-how


Wednesday, December 2, 2009
My Biases

                   • Java developer
                   • Object-orientation
                   • Consulting


Wednesday, December 2, 2009
Everything About
                                   Testing


Wednesday, December 2, 2009
Functional testing...
                   • Black box
                   • White box
                   • Grey box
                   • Regression
                   • Smoke
                   • User
Wednesday, December 2, 2009
Levels of testing...
                   • Unit
                   • Module
                   • Component
                   • Integration
                   • System
                   • System integration
Wednesday, December 2, 2009
More testing!
                   • Performance, scalability, stability, stress
                   • Destructive
                   • Usability
                   • Security
                   • Exploratory
                   • Monkey
Wednesday, December 2, 2009
Wednesday, December 2, 2009
Back to Basics



Wednesday, December 2, 2009
Purposes of Testing

                   • Product validation (the right product?)
                   • Support development (built right?)
                   • User / Technology
                   • System / Code

Wednesday, December 2, 2009
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
Agile Needs from
                                    Testing


Wednesday, December 2, 2009
Waterfall


                  Planning    Analysis   Design   Coding   Testing   Deploying   Done!



                    Risk analysis
                   Test planning
                  Test case design


Wednesday, December 2, 2009
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
Potentially shippable
                 functionality at the end
                    of every iteration?


Wednesday, December 2, 2009
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
The Problem

                              Features to be tested




                                                      1   2       3   4

                                                          Iteration


Wednesday, December 2, 2009
Test Automation



Wednesday, December 2, 2009
Automated testing?




                          Automated test case execution!



                              Who designs and automates the test cases?



Wednesday, December 2, 2009
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
The Key to Test
                                    Automation

                       Testing tools?


                                                            Software development



                          http://stopandfix.blogspot.com/2009/03/key-to-test-automation.html


Wednesday, December 2, 2009
Tests are software, too

                   • Evolution
                   • Architecture & design
                   • Iterative & incremental development
                   • Readability (➙DSL)

Wednesday, December 2, 2009
Why test-first?

                   • Efficient, least boring way to regression
                   • Minimalism (“do only what is needed”)
                   • “Done”
                   • Design
                   • Collaboration

Wednesday, December 2, 2009
Unit Test Driven Development

                              Acceptance Test Driven
                                  Development



Wednesday, December 2, 2009
Challenges to Testing

                   • Changing spec, code, and tests
                   • “Potentially shippable” after every iteration
                   • Usability & property testing
                   • Tester’s role

Wednesday, December 2, 2009
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
Keys to Agile Testing

                   • Developer testing
                   • Evolving testing tools ➙ programming
                   • Lazy & adaptive mindset
                   • Collaboration

Wednesday, December 2, 2009
Beer.



Wednesday, December 2, 2009

More Related Content

Similar to Testing In Agile

Scaling with Postgres
Scaling with PostgresScaling with Postgres
Scaling with Postgres
elliando dias
 

Similar to Testing In Agile (20)

Plugin Testing
Plugin TestingPlugin Testing
Plugin Testing
 
DDD Part3 Retrospective
DDD Part3 RetrospectiveDDD Part3 Retrospective
DDD Part3 Retrospective
 
Extreme Programming (XP) for Dummies
Extreme Programming (XP) for DummiesExtreme Programming (XP) for Dummies
Extreme Programming (XP) for Dummies
 
UE Agile and Lean
UE Agile and LeanUE Agile and Lean
UE Agile and Lean
 
Escaping Automated Test Hell - One Year Later
Escaping Automated Test Hell - One Year LaterEscaping Automated Test Hell - One Year Later
Escaping Automated Test Hell - One Year Later
 
Agile Product Development Workshop
Agile Product Development WorkshopAgile Product Development Workshop
Agile Product Development Workshop
 
Using The Page Object Pattern
Using The Page Object PatternUsing The Page Object Pattern
Using The Page Object Pattern
 
Extreme Programming Deployed
Extreme Programming DeployedExtreme Programming Deployed
Extreme Programming Deployed
 
Resume
ResumeResume
Resume
 
Plone Testing Tools And Techniques
Plone Testing Tools And TechniquesPlone Testing Tools And Techniques
Plone Testing Tools And Techniques
 
Scrum wall images by tobias mayer
Scrum wall images by tobias mayerScrum wall images by tobias mayer
Scrum wall images by tobias mayer
 
Lightweight introduction to Scrum
Lightweight introduction to ScrumLightweight introduction to Scrum
Lightweight introduction to Scrum
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
 
Scaling with Postgres
Scaling with PostgresScaling with Postgres
Scaling with Postgres
 
Business Analysis meet Test Analysis
Business Analysis meet Test AnalysisBusiness Analysis meet Test Analysis
Business Analysis meet Test Analysis
 
My Presentation
My PresentationMy Presentation
My Presentation
 
Agile Software Development Methodologies
Agile Software Development MethodologiesAgile Software Development Methodologies
Agile Software Development Methodologies
 
Franck Mignet - How Exploratory Testing Helps get Structured Testing Started
Franck Mignet -  How Exploratory Testing Helps get Structured Testing StartedFranck Mignet -  How Exploratory Testing Helps get Structured Testing Started
Franck Mignet - How Exploratory Testing Helps get Structured Testing Started
 
Cheap& Quick Internal user testing
Cheap& Quick Internal user testingCheap& Quick Internal user testing
Cheap& Quick Internal user testing
 
Game Design Process
Game Design ProcessGame Design Process
Game Design Process
 

More from Ari Tanninen

More from Ari Tanninen (11)

Responsibility - from drama to results
Responsibility - from drama to resultsResponsibility - from drama to results
Responsibility - from drama to results
 
Leadership begins with responsibility - Riga
Leadership begins with responsibility - RigaLeadership begins with responsibility - Riga
Leadership begins with responsibility - Riga
 
Leadership begins with responsibility
Leadership begins with responsibilityLeadership begins with responsibility
Leadership begins with responsibility
 
Kaiken lähtökohtana on vastuu
Kaiken lähtökohtana on vastuuKaiken lähtökohtana on vastuu
Kaiken lähtökohtana on vastuu
 
Introduction to the responsibility process
Introduction to the responsibility processIntroduction to the responsibility process
Introduction to the responsibility process
 
Design up front is back! v2
Design up front is back! v2Design up front is back! v2
Design up front is back! v2
 
Design up front is back!
Design up front is back!Design up front is back!
Design up front is back!
 
Prototyyppien arviointi
Prototyyppien arviointiPrototyyppien arviointi
Prototyyppien arviointi
 
4K
4K4K
4K
 
Scrum is not enough v2.0
Scrum is not enough v2.0Scrum is not enough v2.0
Scrum is not enough v2.0
 
Scrum Is Not Enough
Scrum Is Not EnoughScrum Is Not Enough
Scrum Is Not Enough
 

Recently uploaded

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 

Testing In Agile

  • 1. Testing in Agile Ari Tanninen Agile Dinner Helsinki December 1st 2009 Wednesday, December 2, 2009
  • 2. Agenda Introductions Motivation Wednesday, December 2, 2009
  • 3. Assumptions • Understanding of software development • Familiarity of agile • Basic testing know-how Wednesday, December 2, 2009
  • 4. My Biases • Java developer • Object-orientation • Consulting Wednesday, December 2, 2009
  • 5. Everything About Testing Wednesday, December 2, 2009
  • 6. Functional testing... • Black box • White box • Grey box • Regression • Smoke • User Wednesday, December 2, 2009
  • 7. Levels of testing... • Unit • Module • Component • Integration • System • System integration Wednesday, December 2, 2009
  • 8. More testing! • Performance, scalability, stability, stress • Destructive • Usability • Security • Exploratory • Monkey Wednesday, December 2, 2009
  • 10. Back to Basics Wednesday, December 2, 2009
  • 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
  • 13. Agile Needs from Testing Wednesday, December 2, 2009
  • 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
  • 28. Keys to Agile Testing • Developer testing • Evolving testing tools ➙ programming • Lazy & adaptive mindset • Collaboration Wednesday, December 2, 2009