+ Exploratory Testing SimplifiedFor Developers in an Agile Context
+ Introduction  The purpose of this presentation is to get developers started with performing exploratory testing on their own code  It is very simplified and practical to make it easy to adapt and use  This is just the first step in learning more about testing
+ Simplified Workflow Overview Impact analysis Perform Exploratory Testing Select Test Techniques
+ Overview  Create a map of the features you have changed  Rate the impact on the features that have been changed  None, Low, High  Select Test Techniques from a list that are relevant for testing your impacted features  Perform exploratory testing
+ Impact Analysis Feature A Feature B Feature C Low High None High: Major changes to the feature Low: Minor changes to the feature or major changes to a dependent feature None: No changes to the feature, or minor changes to a dependent feature that does not have obvious impact In this example a major change has been done to feature A which impacts feature C
+ Select Test Techniques  Always start with running Happy Path testing  http://en.wikipedia.org/wiki/Happy_path  Depending on the Impact your changes have on a component, select a number of additional heuristics that are relevant and exercise that piece of code  None: 0 techniques  Low: 3 techniques  High: 5 techniques
+ List of Test Techniques Techniques Boundary testing Equivalence class analysis State-based testing Input constraints Output constraints Computation constraints Storage (or data) constraints Performance testing Long sequence testing Combination testing Path testing Map and test all the ways to edit a field Logic testing Lessons Learned in Software Testing: Testing Techniques http://www.testingeducation.org/BBST/testdesign/KanerBachPett ichord_Lessons_Learned_in_SW_testingCh3-1.pdf
+ Exploratory Testing Test Scope Selection Perform Exploratory Testing “As long as the tester is thinking and learning while testing and the next tests are influenced by the learning, the tester is performing exploratory testing.” http://university.utest.com/exploratory-testing-the-basics/
+ Conclusion  This is an extremely simplified overview to get you started with your exploratory testing  Look at the following resource, and the appendix, for future learning  http://www.testingeducation.org/BBST/foundations/
+ Appendix  Lessons Learned in Software Testing: Testing Techniques  http://www.testingeducation.org/BBST/testdesign/KanerBachPettichord_Lessons_Learned_in_SW_testingCh3-1.pdf  Test Heuristics Cheat Sheet  http://testobsessed.com/wp-content/uploads/2011/04/testheuristicscheatsheetv1.pdf  Heuristic Test Strategy Model  http://www.satisfice.com/tools/htsm.pdf  Test Tours  http://msdn.microsoft.com/en-us/library/jj620911.aspx  Heuristics Risk-based Testing  http://www.satisfice.com/articles/hrbt.pdf  Black Box Software Testing: Test Design  http://www.testingeducation.org/BBST/testdesign/BBSTTestDesign2011pfinal.pdf

Exploratory Testing for Developers

  • 1.
  • 2.
    + Introduction  The purposeof this presentation is to get developers started with performing exploratory testing on their own code  It is very simplified and practical to make it easy to adapt and use  This is just the first step in learning more about testing
  • 3.
    + Simplified Workflow Overview Impactanalysis Perform Exploratory Testing Select Test Techniques
  • 4.
    + Overview  Create amap of the features you have changed  Rate the impact on the features that have been changed  None, Low, High  Select Test Techniques from a list that are relevant for testing your impacted features  Perform exploratory testing
  • 5.
    + Impact Analysis Feature A FeatureB Feature C Low High None High: Major changes to the feature Low: Minor changes to the feature or major changes to a dependent feature None: No changes to the feature, or minor changes to a dependent feature that does not have obvious impact In this example a major change has been done to feature A which impacts feature C
  • 6.
    + Select Test Techniques Always start with running Happy Path testing  http://en.wikipedia.org/wiki/Happy_path  Depending on the Impact your changes have on a component, select a number of additional heuristics that are relevant and exercise that piece of code  None: 0 techniques  Low: 3 techniques  High: 5 techniques
  • 7.
    + List of TestTechniques Techniques Boundary testing Equivalence class analysis State-based testing Input constraints Output constraints Computation constraints Storage (or data) constraints Performance testing Long sequence testing Combination testing Path testing Map and test all the ways to edit a field Logic testing Lessons Learned in Software Testing: Testing Techniques http://www.testingeducation.org/BBST/testdesign/KanerBachPett ichord_Lessons_Learned_in_SW_testingCh3-1.pdf
  • 8.
    + Exploratory Testing Test Scope Selection Perform Exploratory Testing “Aslong as the tester is thinking and learning while testing and the next tests are influenced by the learning, the tester is performing exploratory testing.” http://university.utest.com/exploratory-testing-the-basics/
  • 9.
    + Conclusion  This isan extremely simplified overview to get you started with your exploratory testing  Look at the following resource, and the appendix, for future learning  http://www.testingeducation.org/BBST/foundations/
  • 10.
    + Appendix  Lessons Learnedin Software Testing: Testing Techniques  http://www.testingeducation.org/BBST/testdesign/KanerBachPettichord_Lessons_Learned_in_SW_testingCh3-1.pdf  Test Heuristics Cheat Sheet  http://testobsessed.com/wp-content/uploads/2011/04/testheuristicscheatsheetv1.pdf  Heuristic Test Strategy Model  http://www.satisfice.com/tools/htsm.pdf  Test Tours  http://msdn.microsoft.com/en-us/library/jj620911.aspx  Heuristics Risk-based Testing  http://www.satisfice.com/articles/hrbt.pdf  Black Box Software Testing: Test Design  http://www.testingeducation.org/BBST/testdesign/BBSTTestDesign2011pfinal.pdf