One of the exploratory testing techniques I use is a ‘Follow The Data’ tour. For this test I follow a piece of data through the system from where it’s first introduced to where it’s stored, wherever it’s used, and where it’s displayed.
As well as checking that the data is actually used (there are times when input that is carefully validated is never actually used by the system) this technique can also lead to further test ideas.
If you find that the data is printed out, this can give you a test about whether non-printable characters can form part of the data. And if so, what happens to them? How long can the data be? What happens to the printout when the maximum length of data is used? will it wrap or print off the page or obscure other parts of the printout
If the data is going to be displayed on a web page, how are HTML characters handled? Stick a <b> command in the data, and see if the page is now displaying bold text.
Following the data can bring other problems to light. You may notice that a screen takes some time to load. A button may be displaced or controls may be overlapping.
If you read a page so that you understand the context of where the data is being displayed, you may notice an inconsistency where the text refers to choosing from 3 values in a list and yet the list has 4 items.
You might notice inconsistencies on pages as you follow the data through the system. One page where the data is used might claim that the system supports 8 different languages. Another page where the data is used might make a claim that there are 10 supported languages. Which is correct?
So don’t stop at simply checking that input data is validated. Follow it through your system and see what it can bring to light.
Looking for more ways to test? Read some of the other posts in this series:
- Lights, Camera, Action, Bugs!
- Follow the Data
- Quick Attacks on CRUD Apps
- Is it a Good Story?
- Testing for App Consistency
- Quick Tests for Your Web App
- “Alarming” Problems You Should be Preventing
- A Tester’s Consistency Checklist
- Peripherals? I’d Forgotten about Those…
- Alternating Phone Models Per Test Cycle
- Using Tea/Coffee Breaks in your Mobile Testing
- Testing Error Conditions