9/19/2012

Test Design Methods

Notes from OOP 2012, talk by Peter Zimmerer:
If you are limited in time, what you always are, and you want to test the User Interface, Markov Chains resulting in trees with percentages of usage, can help you to prioritize parts of the system for testing. Finding the right test cases is always a big problem. In the following you can see an outline of methods, which can lead to an idea or directly to a test case:

Black box:
  • requirement / use case based testing
  • traceability matrix
  • crud
  • flow testing
  • scenario testing
  • soap opera testing
  • user / operational profiles
  • frequency and priority / statistical (markov)
  • feature functions interfaces
  • design by contract
  • equivalence class partitioning
  • boundary value analysis
  • classification tree method
  • state based testing
  • cause effect graphing
  • decision tables, decision trees
  • combinatorial testing ( orthogonal arrays, pair-wise, n-wise)
  • time cycles 
Grey box:
  • dependencies relations between classes, methods or components, services, application, system
  • communication behavior
  • trace or protocol based testing 
White box:
  • control flow-based
  • statements (c0), nodes
  • branches (c1), transitions, links, paths
  • conditions, decisions (c2,c3)
  • elementary comparison mc/dci
  • interfaces (s1,s2)
  • cyclomatic complexity
  • read / write acces 
  • def / use criteria 
With ongoing time always check the quality of the tests. Positiv valid test cases vs. negative invalid test cases. You should also perform fault based testing including risks, attacks, errors, bug patterns and exploratory testing.

No comments:

Post a Comment