- Why Ask "Why?"
- Asking Questions as a Method of Generating Test Ideas
- How Can Questions "Unravel" an Application?
- Asking Questions in the Right Way
- A Final Tip: Record Your Results
Asking Questions as a Method of Generating Test Ideas
How can you learn to ask good questions and turn questions into test ideas? Sometimes asking questions is like pulling a thread on a sweater: One idea spirals to the next and then the next. Essentially, we can unravel an application just by asking the right questions.
To determine the questions to ask, start with the basics and then dig deeper. Journalists ask a lot of questions as they try to uncover facts. They look for details beyond the obvious and immediate story. Likewise, testers have to dig to discover product information, and frequently need to ask questions beyond the requirements. Using the journalist’s core questions and developing an inquisitive nature can help testers to discover more about the product being tested.
Start by thinking like an investigative reporter and asking the fundamental "five W’s and an H":
- Who?
- What?
- When?
- Where?
- Why?
- How?
A tester goes further and asks these two:
- Under what circumstances?
- To what extent?
How do these questions apply to testing a product? Let’s consider a specific example and step through the process of asking questions that turn into test ideas. As our sample application, we’ll use an eCommerce web site that sells textbooks to college students. In this example, watch how questions turn to answers, and both the questions and the answers evolve into test ideas.
Let’s start by asking a "what" question:
Q. What school textbooks does the site sell?
A. The list of available school textbooks is updated before each semester begins.
Test ideas springing from this question might look like this:
- What if a book is sold out?
- What’s the process for updating product inventory? Can we test the inventory process? What if the process fails?
- What’s the search process for finding books? Can we locate newly added books?
- What if a student tries to buy multiple copies of a book? Is there a quantity limit? If the user logs in as a faculty member, does the allowed quantity change?
Now that we’re thinking about how the site functions based on the logged-in user, we need to raise a "who" question:
Q. Who can access the site?
A. Only registered users can access the site.
Test ideas might look like this:
- Who can register? We might discover that only people with a current school ID can register. Now we can create tests dealing with current, expired, and invalid IDs.
- What types of IDs exist? Perhaps different types of users have different types of IDs, so we need to add tests for faculty, staff, and students IDs.
- We can even add a negative test: Attempting to register with no ID.
The point of asking questions is to get information that we might not have had otherwise. If we ask such "reporter questions" for each functional area of a product, we’ll likely generate quite a variety of test ideas.