Post on 13-Jul-2015
Protecting the irreplaceable | f-secure.com
Mind Map Driven Heuristic Exploratory Testing
Pekka Marjamäki
I wonder if
this comes
off…
What is Exploratory testing?
• Approach
• Mindset
• Structured or freestyle
• Learning, Design and Testing
• Heuristic
• What else?
© F-Secure ConfidentialMay 3, 20122
Learning
TestingDesign
Heuristics
• “a fallible method for solving a problem or making a decision”
• A heuristic is not a rule
• a heuristic can work but might fail
• Checklists
• Feelings as heuristics
• Assumptions heuristics
• Heuristics are applied, not followed.
• Follows the Rapid Software Testing heuristics model by James Bach and
Michael Bolton
© F-Secure ConfidentialMay 3, 20123
Models and product elements
• Models a way of measuring coverage
• A model is a heuristic idea, activity, or object
• …that represents (literally, re-presents) another idea, activity, or object…
• …whereby understanding something about the model may help you to understand ormanipulate the thing that it represents.
• SFDPOT
• Structure
• Functions
• Data
• Platform
• Operations
• Time
• Something extra:
• Risks
• Bugs
© F-Secure ConfidentialMay 3, 20124
Structure
• What is this made out of?
• Physical structure
• Devices, cables
• User interface structure:
• Menus, dialogs, buttons, input fields
• Code structure
• Files, modules, classes, methods, lines
© F-Secure ConfidentialMay 3, 20125
input output
platform
Functions
• What does it do?
• What are the features?
• How do you controll it?
• What’s in the menus?
• How about keyboard/mouse only?
• Are there cross functionalities?
© F-Secure ConfidentialMay 3, 20126
input output
platform
Data
• What it does the functions to?
• What are the boundaries?
• What are the REAL boundaries?
• Can you automate inputs?
• Can you assert the outcome?
• Can you test the output values?
© F-Secure ConfidentialMay 3, 20127
input output
platform
Platform
• What does it depend upon?
• Operating systems, hardware
• External software (SaaS, Paas)
• Internal software (Adobe Reader, MS Office)
• Can you take it outside lab? Unsanitary platform?
• Oddball?
• Out-of-the-shelf installed toolbars, browsers, etc.
• Can you automate environment setup?
© F-Secure ConfidentialMay 3, 20128
input output
platform
Operations
• How is it used?
• What are the defaults?
• What is the realistic situtation?
• What is the business process?
• Who is the user?
• Use complex flows, skipping steps, going back, looping
• Can you stress the system?
© F-Secure ConfidentialMay 3, 20129
input output
platform
Timing
• How time affects it?
• Data flow
• Buffering, blocking, timeout
• Usage amount
• End of quater, end of week, business day
• Operating systems
• Idle time, thread, region times
• Rates
• Hits per second, speed, frequency
• Relationship
• Before, after, during, slower, faster
© F-Secure ConfidentialMay 3, 201210
input output
platform
Risks
• Are there risks involved?
• What are the potential areas for failure?
• What are the internal risks?
• What about the external?
• What do we need to take into account?
• Can we mitigate?
• What is the impact?
© F-Secure ConfidentialMay 3, 201211
input output
platform
Bugs
• Does it work differently than you expected?
• Can it bug someone who matters?
• Does it conflict with something known?
• Documents, claims
• Expectations, statures
• Comparable products, itself
• It this a known/recurring issue?
• Who has more knowledge in this?
© F-Secure ConfidentialMay 3, 201212
input output
platform
Demo: Ways to Understand Our Context
• CIDTESTD (”Mother approved”)
• Customers
• Information
• Developer relations
• Team
• Equipment & tools
• Schedule
• Test Items
• Deliverables
© F-Secure ConfidentialMay 3, 201213
Get your mind maps out and go to
http://www.horse-games.org/Horse_Lunge_Game.html
© F-Secure ConfidentialMay 3, 201214
Thank you!
Twitter: @pekkamarjamaki
Skype: anttipekkamarjamaki
Blog: http://how-do-i-test.blogspot.com / http://mitenmatestaan.blogspot.com
© F-Secure Confidential15