It’s not unusual to find examples of software projects failing due to common software testing mistakes made by the testers involved. When it happens, project managers always ask the same question “How did you miss this bug?” and quite often, we have no answer to give. I have seen people trying to answer by saying “The developer didn’t tell me about this flow,” or “I didn’t know this was a user case,” and so on. These answers are pretty unprofessional for a software tester, but have you ever asked the question of yourself? How exactly did you miss that bug? What has gone wrong? What could have been done better? If you are blossoming in your testing career, you need to make sure that you never let yourself make the following mistakes.
Top 10 Software Testing Mistakes
Here’s our list of the top 10 mistakes:
Not Designing Test Cases Upfront
Some testers write test cases very late, and at times towards the end of development phases. Surprisingly, there are testers who don’t even rely on test cases. Commonly, test cases should be developed prior to the development of a functionality. Doing this will give a clear picture to both developer and tester on what needs to be achieved.
Fear of Asking Questions
In a requirement discussion, the product owner will describe what they want, and the developer will explain how it can be done. What if you, the tester, have strong doubts in your mind about a few scenarios but are too fearful of speaking up in the meeting? What if later on, when the architectural design is finished, the team finds out that there is a significant flaw in the architecture? It’s going to be uncomfortable and costly to realize that you could have helped prevent this happening just by asking your questions in the requirement discussion. It is essential that you don’t hold back when a question comes to mind, even if you think it’s a silly one. You can’t presume someone else will realize, and then act on the same issue that occurred to you. If you have a question in your mind, just ask it. By speaking up, you could eventually save time, money, resources, or even life!
Failing to Communicate Road Blockers
In your daily scrum meetings, you must tell your scrum master if there are any blocks to progress. Sometimes, testers wait for things to resolve themselves but in a project, time is vital. If something is stopping you from proceeding, be sure to inform the people concerned in good time.
Wrongly Thinking that Software is not Ready for Testing
In agile projects you should never have this mindset. Every piece of code should be considered ‘testable’. Even in the middle of development, testing can be done by simply cross-checking the designs, usability aspects, interface contracts, APIs or databases and so on.
Not Paying Attention to Non-functional Attributes
It was commonly thought that software would work perfectly when all the functionality attributes had been integrated. But there are non-functional attributes to consider, such as performance, usability, and security too. As a tester, you should be knowledgeable enough to spot any performance or security lags with the software and then communicate the issue to the developers concerned.
Testing on Mock Data
This is another mistake that testers tend to make. While testing your software, the relevance of the data used is very important. So keep nudging your data/business analysts to give you real-time data, or something similar, so you can be sure you are simulating actual, real-life scenarios.
Not communicating with the wider team
You should be working closely with the wider team who are also involved in the project. By doing this you can be involved with the project at an early stage and start to build up some knowledge of what is coming your way so that you can be more prepared for it.
Not Going Beyond Test Cases
Being confined to test case-specific testing can be problematic at times. So be prepared to run exploratory testing on specific areas to discover any tricky scenarios that can create bugs.
Ignoring Blind Spots
As and when you become very familiar with a particular software, you may tend to miss or ignore some areas. These are called blind spots for a tester, so be aware of this potential problem. Never assume things are a certain way, and always be vigilant when doing routine checks.
Not Learning from Mistakes
Testers are not magicians or prophets. They cannot just go in and randomly find bugs on a whim. To discover a bug, you need to think like a pride of lions hunting in the wild. Know and study the target group (in your case, the software), focus on the weak, close in and then attack. In other words, learn the software and its architecture, notice the areas that are prone to bugs, write specific test cases and then go! You may fail at times, but if you stay vigilant, being sure not to fall into making the common mistakes outlined above, you will find success sooner rather than later.