Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Test Cases - are they dead?

854 views

Published on

Доклад Алексея Виноградова и Войтеха Барты на конференции SQA Days-20. 24-26 ноября 2016. Минск
www.sqadays.com

Published in: Education
  • Be the first to comment

  • Be the first to like this

Test Cases - are they dead?

  1. 1. Are test cases dead? The second life with lean test cases Alexei Vinogradov Vojtech Barta
  2. 2. Alexei Vinogradov IT-Consultant testing, test management, test automation, coaching email: alexei@vinogradov-it.de skype: alexejv twitter: @i_vino blog: http://qa-blog.alexei-vinogradov.de https://www.softwerkskammer.org/groups/testing
  3. 3. http://radio-qa.com
  4. 4. Vojtěch Barta QA, Trainer, Agile guy, photographer email: bartavoj@gmail.com website: bartavoj.cz
  5. 5. What is a Test Case? • Test Cases are for testers to execute functional testing in the most efficient way providing following information if relevant • Pre-condition • Description • Steps • Post-condition • Test Data • …. Anything else you need... • All of these are optional, specially Steps
  6. 6. Positive motivation • Functional testing requires structure • Plan • Execute • Track the progress • Report results • Repeat
  7. 7. Wrong motivation • Lack of knowledge • Bad Requirements • Trust Issues
  8. 8. Do we need them?
  9. 9. Overview • Proposition of Lean Test Cases (LTC) • What is different on LTC from TC • Examples of LTC • Comparison to Checklists & Explorative • LTC and Agile • LTC and large scale projects
  10. 10. Lean Test Cases Lean test cases (LTC) are the written test ideas that can be executed by a tester who knows and understands the System Under Test (SUT) Not yet
  11. 11. Lean Test Cases like classic Test Cases, but without • (formal) preconditions • steps • (formal) postconditions • (very often) input values
  12. 12. Classic Test Cases Example: (Calculator App) - simple addition • Preconditions: the app is started, no operation is active, display is showing 0. • Steps: 1. press „2“. Expected: 2 is displayed 2. press „+“. Expected: 2 is displayed 3. press „5“, Expected: 5 is displayed 4. press „=„, Expected: 7 is displayed • Postcondition: „7“ is still displayed and will be used for the next operation.
  13. 13. Lean Test Cases Examples: (Calculator App) • It must be possible to add 2 numbers • It must be possible to multiply 2 numbers
  14. 14. Lean Test Cases Examples: (Calculator App) • It must be possible to add the number to displayed value from previous operation (with informal precondition)
  15. 15. Lean Test Cases Examples: (Calculator App) • After pressing „M+“ the result of „memory“-cell is added to the number showing. The result is not displayed, but stays as a new value of „memory“-cell (with informal postcondition)
  16. 16. Lean Test Cases Examples: (Traffic Lights App) • 2 lights at the crossing switch from Red <-> Green: 1. Light 1: Red Light 2: Green 2. Light 1: Red Light 2: Yellow 3. Light 1: Red Light 2: Red 4. Light 1: Red+Yellow Light 2: Red 5. Light 1: Green Light 2: Red (with test data)
  17. 17. LTC vs Classic Test Cases Similar to test cases: • manage in TestCase Management Tools • add meta-data (creation date, links to reqs, creator, priority, functional sets etc.) • test coverage • regression testing
  18. 18. LTC vs Checklists Format of any given lean test case is similar to the format of one checklist entry, but: • LTC not a list, but „database“ of tests • LTC share similarities with classic TC, Checklists - not
  19. 19. LTC vs Explorative Similarity: • input test data „generated“ during execution Difference: • LTC - test design before execution, Explorative - during
  20. 20. LTC in Agile • create after user story is defined • acceptance criterias + more • share with developers and PO ASAP • get feedback from developers and PO
  21. 21. LTC in Agile • assign LTC to test automation levels (Module, Integration, EndToEnd) LTC-1 LTC-2 LTC-3 .. LTC-N
  22. 22. LTC in Agile • manage formally or not - up to team • let’em test! (it works)
  23. 23. LTC in large projects • even more important to switch to LTC • help to find bad requirements • enforce to gather knowledge about project • works very well with clear user stories
  24. 24. Lean Test Cases: Tips • in some situations use classic test cases with steps ( if very complex logic, etc) • structure your (many) tests • make the best use of your test case management tools
  25. 25. Lean test cases: benefits • time (faster) • cost (cheaper)
  26. 26. • easier to read for not-testers Lean test cases: benefits
  27. 27. • less maintenance Lean test cases: benefits
  28. 28. • more interesting to execute Lean test cases: benefits
  29. 29. Lean test cases: summary • test design more effective and more efficient • better quality of test execution (more use of humans cognitive abilities) • can be used for wide variety of projects
  30. 30. Summary Test cases are dead! Long Live (Lean) Test Cases!
  31. 31. Have fun at SQA Days 20! Photo: Sekhar, India ©
  32. 32. The End. Questions? skype: alexejv email: alexei@vinogradov-it.de twitter: @i_vino

×