Some of the brilliant people out there in the testing community have come up with testing mnemonics which I tend to refer to during my testing tasks. I find that testing mnemonics can be a valuable idea generation tool in a number of software testing contexts. I would like to note that rather than restricting ourselves to using test mnemonics during testing, they should be used as a tool to generate more ideas
This blog post contains some of the mnemonics I use which may be beneficial to others too.
H – History
E – Explore
N- Note Taking
While working on a complex product, it is common to find issues which are difficult to diagnose. Trying to step back and understand about the history of the product e.g. recent changes in a specific area in the product, would help in the investigation of the issue by obtaining ideas about where to focus.
The observed issue may appear once or several times. It would be useful to understand the trend of its occurrence, e.g. areas in which the issue is observed, number of occurrences of the issue in certain area. This would suggest areas to explore and experiment further.
During the experiments, our experience in specific domains, comparable products or technology must be used appropriately.
Note taking is very important while testing to refer back to the steps taken when a problem was encountered. Microsoft recording tool is very handy to record repro steps, or to have it during investigation of hard-to-repro issues.
Once we have enough data in hand, the next step would be to analyze. The analysis would feed into the history of the project useful for exploratory charters in the future.
For more read the article by Lalit
– by James Bach
Operational Criteria – CRUSSPIC
Development Criteria – STMPL
A mnemonic useful for questioning existing products and coming up with creative ideas. For more: https://www.mindtools.com/pages/article/newCT_02.htm
S – Substitute
C – Combine
A – Adapt
M – Modify
P – rePurpose
E – Eliminate
R – Rearrange
– Test Techniques Heuristics by James Bach
– Test Oracles. See Transpection Transpected by Michael Bolton
I find this mnemonic particularly useful in the context of exploratory testing or any situation where the behaviour of the software is not well specified.
- Comparable Product
- User Expectations
– Bug Advocacy Mnemonic by Cem Kaner which is useful to communicate bug related information to stakeholders
- Replicate it
- Isolate it
- Maximize it
- Generalize it
- Externalize it
- And Say it Clearly and Dispassionately
– Test Reporting Heuristics by Michael D Kelly
– Error Handling Heuristics by Ben Simo. For more: http://www.questioningsoftware.com/2007/08/failure-usability.html
– Regression Testing Heuristics by Karen N. Johnson helpful to gnerate ideas during regression testing
- Recent – Think about the recent changes
- Core – Think about the core functionality that should continue to work
- Risk – Think about the areas that are risky due to the recent changes
- Configuration sensitive – Think about environment dependencies during testing
- Repaired – Think about areas that require testing due to recently fixed defects
- Chronic – Think about areas that have issues seen frequently
– Requirements Analysis and Feedback Mnemonic by Darren McMillan.
- Goals – What must work in the product?
- Risks – What are the risky areas in the product?
- Approach – What approach would we take in testing the product?
- Tradeoffs – What tradeoffs are we prepared to make?
- Environments – What environments do we have and what do we plan to use for testing?
- Dependencies – We need to understand any external and internal dependencies during testing.
- Data – Where will data come from?
- Stakeholders – Understand who the stakeholders are for a project
- Coverage – Thing about how the test coverage is going to be made visible to the project stakeholders.
- Resources – Are the available resources enough for testing a feature?
- Information needs – What are we trying to know from the testing task?
- Prioritisation – What is most important?
- Tooling – What are the tools we plan to use during testing? Are they available in house?
SFDPOT (San Francisco Depot)
– Useful mnemonic by James Bach for exploratory testing under pressure
- Structure (what the product is)
- Function (what the product does)
- Data (what it processes)
- Platform (what it depends upon)
- Operations (how it will be used)
- Time (what happens when)
– Session Based Test Reporting Mnemonic by Jon Bach