1 / 87

WARNING

WARNING. These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010. They may not show up well on other PowerPoint versions . You can download PowerPoint 2010 viewer from here .

tolla
Download Presentation

WARNING

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. WARNING • These slides are not optimized for printing or exam preparation. These are for lecture delivery only. • These slides are made for PowerPoint 2010. They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here. • These slides contain a lot of animations. For optimal results, watch in slideshow mode. 50 min

  2. Testing as a career…? Easier to get in,get ahead Blame others, not get blamed Still can code

  3. Testing as a career…? Easier to get in,get ahead Blame others, not get blamed Still can code

  4. SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case

  5. SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Test case

  6. SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Test case

  7. When do we define test cases? Are they pre-determined or on-the-fly? SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Test case

  8. Pre-determined or on-the-fly? SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Test case How much internal info about the SUT should be revealed to the test case designer?

  9. Pre-determined or on-the-fly? SUT Test case How to choose which test cases to use and which to discard? Test case Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  10. Heuristics for Better Test Case Design CS2103/T, Lecture 9, Part 2, [Oct 18, 2013]

  11. Pre-determined or on-the-fly? How to choose? SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  12. Pre-determined or on-the-fly? SUT Test case

  13. Pre-determined or on-the-fly? SUT Test case

  14. Pre-determined or on-the-fly? SUT Test case pre-determined → scripted testing on-the-fly → exploratory testing

  15. Pre-determined or on-the-fly? SUT Test case pre-determined → scripted testing on-the-fly → exploratory testing

  16. Pre-determined or on-the-fly? Scripted+Exploratory SUT Test case

  17. Pre-determined or on-the-fly? Scripted+Exploratory SUT Test case

  18. Scripted+Exploratory SUT Test case

  19. Scripted+Exploratory SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  20. Scripted+Exploratory SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  21. SUT Developer Tester Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  22. SUT Developer Tester Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  23. Glass-box / a.k.a white box Test case Test case Gray-box Test case Test case Test case Test case Test case Test case Black-box How much info revealed?

  24. Test case Test case Test case Test case Test case Test case Test case Test case How much info revealed?

  25. Scripted+Exploratory SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Black/Glass/Gray-box

  26. Scripted+Exploratory SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Black/Glass/Gray-box

  27. Acceptance testing is most likely to be… • Black box testing • White box testing • Gray box testing box {a|b|c} e.g. box a 77577 tinyurl.com/questionSMS

  28. How to choose? Scripted+Exploratory SUT Test case Test case Test case Test case Test case Test case Test case Test case Test case Black/Glass/Gray-box

  29. How to choose? Why choose? Some heuristics Test case Test case Test case Test case Test case Test case Test case Test case

  30. [extra] BSoD Do not panic! This is a simulation 

  31. [extra] BSoD What? Windows without bugs?

  32. How to choose? Why choose? Test case Test case Test case Test case Test case Test case Test case Test case

  33. How to choose? Why choose? Test case Test case Test case Test case Test case Test case Test case Test case

  34. How to choose? Why choose? [Effectiveness & Efficiency]

  35. How to choose? Why choose? Dilbert Wally [Effectiveness & Efficiency] Both tested the same system Found 20 bugs Found 10 bugs

  36. How to choose? Why choose? Dilbert Wally [Effectiveness & Efficiency] Both tested the same system Found 20 bugs Found 20 bugs Used 100 test cases Used 40 test cases

  37. How to choose? Why choose? [Effectiveness & Efficiency] A test case should have a reasonable chance of finding a new bugnot found by the other test cases.

  38. How to choose? E&E of testing Some heuristics Test case Test case Test case Test case Test case Test case Test case Test case

  39. How to choose? E&E of testing Some heuristics Test case Test case Test case Test case Test case Test case Test case Test case

  40. How to choose? E&E of testing Some heuristics Test case Test case Test case Test case Test case Test case Test case Test case Equivalence partitioning

  41. Equivalence partitioning

  42. Equivalence partitioning isValidMonth(int m): boolean Description: checks if m is in the range [1..12]. returns true if m is in the range, false otherwise. Hmmm… interesting. Let me try 275 Test case 23: Input: 273 Expected: false Test Case 12 Test case 23: Input: 274 Expected: false Test Case 13 Actual: true Actual: true

  43. Equivalence partitioning isValidMonth(int m): boolean 275 274 273

  44. Equivalence partitioning isValidMonth(int m): boolean 275 274 273

  45. Equivalence partitioning isValidMonth(int m): boolean 0 1 12 13 MAX_INT MIN_INT 275 274 273

  46. Equivalence partitioning isValidMonth(int m): boolean 0 1 12 13 MAX_INT MIN_INT

  47. Equivalence partitioning How to partition?

  48. Equivalence partitioning SUT

  49. Equivalence partitioning • Input partition 1a SUT true false

  50. Equivalence partitioning • Input partition 1a • Input partition 1b SUT true false false

More Related