1 / 27

Seven Deadly Sins of Agile Testing

Seven Deadly Sins of Agile Testing. About me – Brad Swanson. Test. Deliverable. Deliverable. Time to market. Traditional Development. Analyze. Implement. Agile Development. Risk. traditional. Risk. agile. Time. Schedule Confidence. ?. Productivity. ROI. Early to market advantage.

hashim
Download Presentation

Seven Deadly Sins of Agile Testing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Seven Deadly Sins of Agile Testing

  2. About me – Brad Swanson

  3. Test Deliverable Deliverable Time to market Traditional Development Analyze Implement AgileDevelopment

  4. Risk traditional Risk agile Time

  5. Schedule Confidence ?

  6. Productivity

  7. ROI Early to market advantage + $ time agile - traditional

  8. Quality traditional Open defects agile Time

  9. Source: Dr. Dobb’s Journal 2008 Agile Adoption Survey http://www.ambysoft.com/surveys/agileFebruary2008.html

  10. Sin #7: Separation of Requirements & Tests Req Spec Tests

  11. Penance • Create an executable specification: Spec == Tests • Use concrete examples to specify requierements • Analysts and Testers become best friends! • Acceptance Test Driven Development (ATDD, BDD) • Cucumber, FIT, Fitnesse, Selenium • Other tools??? • INVEST in user stories • Independent, Negotiable, Valuable, Estimable, Small, Testable • Include testing in the Definition of Done for stories & sprints • Expand your skills

  12. Sin #6: Testing is one sprint behind Code sprint 1 Code sprint 2 Code sprint 3 Code sprint 4 Test Sprint 1 Test Sprint 2 Test Sprint 3 Test Sprint 4

  13. Penance • Include testing in the Definition of Done for stories & sprints • Smaller backlog items & user stories • http://www.richardlawrence.info/2009/10/28/patterns-for-splitting-user-stories/ • Testers define & create tests at the start of each story/sprint • Automated testing / TDD / ATDD / BDD

  14. Sin #5: Unbalanced Testing Quadrants

  15. Penance • Include the appropriate testing quadrants in the Definition of Done for stories, sprints, and releases. • Have a balanced testing plan as part of release planning • Create backlog items for appropriate testing activities, e.g. –ility testing. • Get management commitment to support effort needed to “catch up” on test automation; show the ROI on automation. • Get real users & stakeholders to participate in acceptance testing – early and often.

  16. Sin #4: Ignoring Test Failures

  17. Penance • Discipline: stop the line whenever the CI build & tests fail • Invest in making automated tests robust • Create incentives for team members to have clean check-ins; friendly competition? • Take metrics: reward people for improving quality and automated test coverage

  18. Sin #3: Lack of TDD & CI

  19. Penance • Commit as a team to doing TDD and CI • Discipline: keep it going • Expand your skills • Invest in infrastructure, tools, training. Show the ROI. • Keep metrics to measure resulting quality improvements

  20. Sin #2: Separate QA Team Dev Dev Dev Dev Dev Dev QA QA QA QA QA QA

  21. Penance • Form cross-functional teams including QA • Co-located teams: same room • Do a pilot project with QA dedicated to the team; keep metrics to demonstrate the results. • Keep QA fully involved with the team: planning, implementing stories, demos, retrospectives • Whole-team responsibility for product quality

  22. Sin #1: WaterScrumming Analysis sprint Analysis sprint Code sprint Code sprint Code sprint Test sprint Test sprint Test sprint

  23. Penance • Form cross-functional teams including QA & analysts • Include testing in the Definition of Done for stories & sprints • INVEST in user stories • Independent, Negotiable, Valuable, Estimable, Small, Testable • http://www.richardlawrence.info/2009/10/28/patterns-for-splitting-user-stories/ • Testers define & create tests at the start of each story/sprint • TDD / ATDD / BDD • Allow one hardening sprint before release with all hands on deck testing

  24. brad@ProperoSolutions.com

  25. License agreement • At least part of the material used in this presentation has been licensed as Creative Common, non-commercial, share-alike content (http://creativecommons.org/licenses/by-nc-sa/3.0/de/deed.en) from agile42 GmbH. • As per the license agreement you are entitled to do whatever you like to the material as far as is not contradicting basic principle of the license. On top of that agile42 GmbH kindly asks you to return any change you will make to this material, for validation and sharing purposes.

More Related