Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

Agile Testing - Testing from Day 1

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Chargement dans…3
×

Consultez-les par la suite

1 sur 56 Publicité
Publicité

Plus De Contenu Connexe

Diaporamas pour vous (20)

Similaire à Agile Testing - Testing from Day 1 (20)

Publicité

Plus récents (20)

Publicité

Agile Testing - Testing from Day 1

  1. 1. AGILE TESTING
  2. 2. While we wait for the session to start, meet your neighbors and discuss … AGILE TESTING @fadistephan | @excellaco | excella.com • Do you currently work on an Agile team? • Does you team include testers? • What testing challenges are you facing?
  3. 3. • Consultant @ Excella • Software Development Practice Lead • Scrum Trainer and Coach • 15+ years of experience in software development • Co-organizer of the DC Scrum User Group • @FadiStephan FADI STEPHAN AGILE TESTING @fadistephan | @excellaco | excella.com
  4. 4. AGILE TESTING @fadistephan | @excellaco | excella.com Requirement Design Code Test 2 Weeks 2 Weeks 2 Weeks 2 Weeks
  5. 5. AGILE TESTING @fadistephan | @excellaco | excella.com 4 Weeks Requirements Design C o o o o o o o o o o o o o o o o o o o o o o o o o d e Test
  6. 6. AGILE TESTING @fadistephan | @excellaco | excella.com Code 1 Code 2 Test 1 Test 2 2 Weeks 2 Weeks 2 Weeks 2 Weeks Code 3 Code 4 Test 3
  7. 7. AGILE TESTING @fadistephan | @excellaco | excella.com 2 Weeks Requirement Design Code Test Story 1 Story 1 Story 3 Story 4 Story 6 Story 2 Story 1 Story 2 Story 3 Story 5 Story Story 4 Story 1 Story 2 Story 3 Story 5 Story 4 Story 1 Story 2 Story 3 Story 5 Story 6 Story 7
  8. 8. AGILE TESTING @fadistephan | @excellaco | excella.com
  9. 9. Requirements Design Development Test DeployWATERFALL APPROACH AGILE TESTING @fadistephan | @excellaco | excella.com
  10. 10. Requirements Design Development Test Deploy ITERATIVE & INCREMENTAL APPROACH AGILE TESTING @fadistephan | @excellaco | excella.com
  11. 11. “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” “Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.” - First and third of the Twelve Principles behind the Agile Manifesto A LEANER PMO IN THE FEDERAL GOVERNMENTAGILE TESTING @fadistephan | @excellaco | excella.com
  12. 12. REQUIREMENTS DESIGN DEVELOPMENTTEST DEPLOY AGILE TESTING @fadistephan | @excellaco | excella.com
  13. 13. Days Not Months or Years REQUIREMENTS DESIGN DEVELOPMENTTEST DEPLOY AGILE TESTING @fadistephan | @excellaco | excella.com
  14. 14. WHAT KIND OF TESTING? AGILE TESTING @fadistephan | @excellaco | excella.com
  15. 15. Functional Tests Acceptance Tests Unit Tests Integration Test Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests Types of Testing AGILE TESTING @fadistephan | @excellaco | excella.com
  16. 16. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  17. 17. WHICH TESTS DO WE AUTOMATE? AGILE TESTING @fadistephan | @excellaco | excella.com
  18. 18. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Automated Automated Automated Manual Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  19. 19. HOW MANY OF EACH TYPE? AGILE TESTING @fadistephan | @excellaco | excella.com
  20. 20. Testing Pyramid AGILE TESTING @fadistephan | @excellaco | excella.com Unit Tests Integration/System Tests Functional Tests UI Tests Manual
  21. 21. WHEN DO WE START TESTING? AGILE TESTING @fadistephan | @excellaco | excella.com
  22. 22. Task Board AGILE TESTING @fadistephan | @excellaco | excella.com To Do In Progress Testing Done User Story User Story User Story Task Task Task Task Task Task Task Task Task
  23. 23. TESTING IS NOT A PHASE AGILE TESTING @fadistephan | @excellaco | excella.com
  24. 24. Task Board AGILE TESTING @fadistephan | @excellaco | excella.com To Do In Progress Done User Story User Story User Story Task Task Task Task Task Task Task Task Task
  25. 25. WHO IS DOING THE TESTING? AGILE TESTING @fadistephan | @excellaco | excella.com
  26. 26. TESTING IS EVERYONE’S RESPONSIBILITY AGILE TESTING @fadistephan | @excellaco | excella.com
  27. 27. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  28. 28. AGILE TESTING @fadistephan | @excellaco | excella.com Think Test Code Refactor Test Driven Development
  29. 29. Testing Pyramid AGILE TESTING @fadistephan | @excellaco | excella.com Unit Tests Integration/System Tests Functional Tests UI Tests Manual
  30. 30. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  31. 31. AGILE TESTING @fadistephan | @excellaco | excella.com
  32. 32. AGILE TESTING @fadistephan | @excellaco | excella.com
  33. 33. EXECUTABLE SPECIFICATION AGILE TESTING @fadistephan | @excellaco | excella.com
  34. 34. AGILE TESTING @fadistephan | @excellaco | excella.com As a customer I want to collect books in a shopping cart So that I can order several books at once. • Books can be added to the shopping basket • Books can be removed from the shopping basket • Shopping basket is initially empty • The same book can be added multiple times to the shopping basket User Story
  35. 35. AGILE TESTING @fadistephan | @excellaco | excella.com • Requirements and tests are just two sides of the same coin – You can’t have a user story (requirement) without acceptance criteria (test) • Agile testing focuses on melding requirements and tests into executable specifications Executable Specifications
  36. 36. AGILE TESTING @fadistephan | @excellaco | excella.com As a potential customer I want to collect books in a shopping cart So that I can order several books at once. • Books can be added to the shopping basket – Given my shopping basket is empty – When I add the book “Harry Potter” to my shopping basket – Then my shopping basket should contain 1 copy of “Harry Potter” Specification by Example
  37. 37. AGILE TESTING @fadistephan | @excellaco | excella.com As a potential customer I want to collect books in a shopping cart So that I can order several books at once. • The same book can be added multiple times to the shopping basket – Given my shopping basket contains 1 copy of “Harry Potter” – When I add the book “Harry Potter” to my shopping basket – Then my shopping basket should contain 2 copies of “Harry Potter” Specification by Example
  38. 38. AGILE TESTING @fadistephan | @excellaco | excella.com Green Documents • Use Specification by Example to create “green documents” – Less Likely to rot – Not write once documents – Help people think and collaborate – Communicate what the product really does – Become automated acceptance tests – Become part of regression test suite
  39. 39. AGILE TESTING @fadistephan | @excellaco | excella.com PASS REFACTOR CODE FAIL FAIL PASS Automated Acceptance Test Automated Unit Test User Story Acceptance Criteria Back
  40. 40. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  41. 41. DO NOT DO FUNCTIONAL TESTING VIA THE UI AGILE TESTING @fadistephan | @excellaco | excella.com
  42. 42. AGILE TESTING @fadistephan | @excellaco | excella.com Business Layer Web Layer Browser Data Layer Code Code Code Code Code Code
  43. 43. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  44. 44. USABILITY TESTING AGILE TESTING @fadistephan | @excellaco | excella.com
  45. 45. AGILE TESTING @fadistephan | @excellaco | excella.com
  46. 46. AGILE TESTING @fadistephan | @excellaco | excella.com
  47. 47. AGILE TESTING @fadistephan | @excellaco | excella.com
  48. 48. AGILE TESTING @fadistephan | @excellaco | excella.com Credit: John Bellomy
  49. 49. AGILE TESTING @fadistephan | @excellaco | excella.com Credit: John Bellomy
  50. 50. EXPLORATORY TESTING AGILE TESTING @fadistephan | @excellaco | excella.com
  51. 51. EXPLORATORY TESTING IS NOT AD-HOC TESTING AGILE TESTING @fadistephan | @excellaco | excella.com
  52. 52. EXPLORATORY TESTING IS NOT EXHUASTIVE TESTING AGILE TESTING @fadistephan | @excellaco | excella.com
  53. 53. AGILE TESTING @fadistephan | @excellaco | excella.com Exploratory Testing • A sophisticated, thoughtful approach to testing without a script • Enables going beyond the obvious variations that have already been tested • Combines learning, test design and test execution into one test approach • Applies heuristics and techniques in a disciplined way
  54. 54. AGILE TESTING @fadistephan | @excellaco | excella.com Session Based Testing • Time-boxed and structured • Mission/charter based • Look for patterns that do not look right • Divert from the mission if necessary • Report on your results
  55. 55. Functional Tests Acceptance Tests Unit Tests Integration Tests Component Tests System Tests Exploratory Tests Usability Tests Performance Tests Load Tests Stress Tests Security Tests SupportProgramming CritiqueProduct Business Facing Technology Facingfrom Brian Marick Testing Quadrant AGILE TESTING @fadistephan | @excellaco | excella.com
  56. 56. SUMMARY 1. Testing in not a phase 2. Testing is everyone’s responsibility 3. Testing starts on day 1 4. Do automate all scripted tests 5. Developers are the one’s doing most of the automation 6. Do use executable documentation 7. Do not automate functional testing via the UI 8. Save most manual testing for usability and exploratory testing AGILE TESTING @fadistephan | @excellaco | excella.com

×