Engaging in a brainstorming session with the team always proves to be a valuable learning opportunity.
On this occasion, we devised a unique approach. We divided the team into two groups and opted to interrogate one another about a common product – Cell Phone. The only stipulation was that the questions must pertain exclusively to phone testing.
Recommended IPTV Service Providers
- IPTVGREAT – Rating 4.8/5 ( 600+ Reviews )
- IPTVRESALE – Rating 5/5 ( 200+ Reviews )
- IPTVGANG – Rating 4.7/5 ( 1200+ Reviews )
- IPTVUNLOCK – Rating 5/5 ( 65 Reviews )
- IPTVFOLLOW -Rating 5/5 ( 48 Reviews )
- IPTVTOPS – Rating 5/5 ( 43 Reviews )
Consequently, the session concluded with a collection of intriguing unanswered queries and a handful of improved ideas for phone testing.
This session imparted to us an important lesson – questioning (even seemingly silly questions) aids in the enhancement of products/applications, which is ultimately what matters.
I aim to substantiate this proposition with the following article.
What You Will Learn:
Reasons for Testers Asking Questions and Their Significance
As testers, we are well aware of the workings of the real-world, particularly when it comes to delivery and time constraints.
Even in the absence of pressure, it is not feasible for every tester to have a comprehensive and concise requirements document. Under both aforementioned circumstances, testers are inclined to make assumptions due to the lack of available data and the necessity for decision making.
Recommended read: => Managing Challenging Requirements as a Tester
Instances of Assumptions
The requirement document stated that the essay writing application should display the author’s name. However, during testing, the tester discovered that multiple authors could contribute to the same essay, each maintaining their respective versions.
Now, how should the author’s name be displayed in this scenario? The requirement lacked clarity, and neither time nor personnel were available for clarification. The developer made the assumption that the author’s name associated with the latest version of the essay should be displayed, and the tester agreed.
Questions based on assumptions could include:
- What if multiple authors simultaneously updated the essay?
- What if there are multiple authors with the same name?
- What if an author wishes to access the most recent version they submitted?
An application crashed when a user attempted to refresh the same page for the 7th time. When faced with heavy delivery pressure, it is necessary to possess the appropriate data to comprehend the risks associated with this specific issue.
In the above situation, if no data is available, a tester may have to assume that it is an infrequent occurrence and can be addressed later.
Possible questions based on this assumption are as follows:
- Is it acceptable to take the risk given the severity of the issue observed?
- Is there a temporary workaround that can be implemented?
- Should this be included in the known issues bug list?
From the aforementioned examples, it is crucial to note that the assumptions testers make and the questions they ask are not always restricted to the application itself. At times, the questions may pertain to “what to do next, how, or why”.
Determining the Next Course of Action, How or Why
Step 1: Conduct an Investigation
When encountering unexpected behavior, an inquisitive tester embarks on an investigation, which invariably leads to the formulation of questions.
Upon observing an issue where the user was being logged out every 5 seconds, an investigation revealed an automated query running in the database every 5 seconds, which cleared all existing sessions.
Possible questions arising from this investigation could be:
- Why was that query necessary?
- What purpose did automating it for every 5 seconds serve?
Thus, conducting an investigation generates additional questions that aid in arriving at the correct answers.
Step 2: Apply Previous Experience
Based on past encounters with similar problems, our minds swiftly retrieve relevant data. When applied to the current situation, this data gives rise to additional questions.
Based on previous experiences working with Linux OS, I knew that rebooting the server often resolves numerous errors automatically. Applying this knowledge to the present scenario, where the code was deployed and maintained on a Linux server, I observed an improvement in the application’s performance.
The ensuing questions were as follows:
- Which defunct processes were impeding the code’s speed?
- What would have happened if the server hadn’t been rebooted?
- Are we overlooking any factors while measuring the application’s performance?
Step 3: Analyze Data
An experienced tester always analyzes data and questions the existence of patterns.
Following the initial product launch, only 3 system crashes were reported, and the product performed flawlessly in all other scenarios. With the second version launch, the reported failures increased to 17. By the third version launch, the reported failures increased to 47. No significant changes were made. So, why did this happen?
While analyzing the data, it became apparent that during the initial launch, only 3 centers, all of which were rural, experienced failures.
For the second launch, the number of rural centers increased, resulting in a higher failure rate. A closer examination revealed that it was not a problem with the specific product feature but rather due to the low network speed. Thus, analyzing the available data can help identify patterns in the problem.
Possible questions resulting from this analysis are:
- What is the impact of network speed on the system?
- What remedial actions can be taken?
- What precautionary steps should be implemented in the future?
- What network speeds should be considered during testing?
Note: There are undoubtedly many more questions one might have. This is merely a shortlist to provide a basic notion.
Hence, testers do not ask questions merely for the sake of asking questions. They do so for various reasons, including:
- Constant investigation
- Lack of specific knowledge
- Clarification of doubts
- Clearing up assumptions made
- Evaluating overall risk
- Facilitating decision making
As they say, asking questions is an art.
Now the pertinent question is: How does one properly ask a question?
How to Formulate a Question
Asking questions is always encouraged in our industry. However, if you receive negative or indifferent responses to your inquiries, perhaps you need to fine-tune your questioning technique or polish your skills in asking questions.
Personally, while I do advocate for asking questions, I do expect individuals to do some preliminary research beforehand. It is obvious that no one would appreciate someone asking “where can I download Skype” when Google is readily available :).
Therefore, while asking questions, it is advisable to employ the following techniques to maximize the likelihood of obtaining satisfactory answers.
Pose insightful questions:
- Delve deeper into the nature of the question, as answers may not always be straightforward
- Be prepared to actively listen and restrain the urge to interrupt
- Avoid assumptions and instead seek relevant information, such as helpful links or recommended reading materials
- Present your own opinion and inquire about their perspective
As they say, asking a question is the key to unlocking a world brimming with knowledge. Observe how children tend to ask more questions than adults. Why? – Because they have not yet learned to rely on assumptions. Emulate the behavior of children when seeking information.
Keep asking, remain curious, seek clarification, and testing will become easier, more productive, and intriguing.
About the author: This fantastic article was written by Bhumik M., a member of the STH team.
If this article has prompted further questions, please feel free to ask them in the comments section below. 🙂