How to find a bug – A Question?
This is a very good and important point. If you are a software tester or a QA engineer or anyone testing an application then you must be thinking every minute to find a potential bug that could break the system in an application.
It is always good in finding a blocker bug like any system crash or server errors is often rewarding. But it is not always like that and there are different bug when found is rewarding. One should try to find out the bugs that are most difficult to find and those always misleads users. Bugs which often go unnoticed and a good test case will unearth the bugs which always go unnoticed and also many times bugs occur because of some minute flaw in the code and also bugs get unnoticed because the Tester might overlook the functionality and that bug might become a potential hazard to the application.
Finding such a subtle bugs is most tiring and also the most challenging work and it gives you satisfaction of your work because we should thing differently than normal routine to find these kinds of bugs. Most of the time the effort put in by a tester goes unnoticed and also not rewarded by seniors may be in terms of some appreciation etc. In my capacity as a QA Lead I make it a point to always bring to the notice of the Project team about any potential bugs found by my team and appreciate them for their work and this really motivates them to do the work in a better and effective way and this has been followed in the project and we could see the results. A word of encouragement or a word of appreciation either verbally or through a team mail will really boost up the morale of the person or the team where ever it is applicable and also I encourage other to do the same. I will share my experience of one such subtle bug that was not only difficult to catch but was difficult to reproduce also. I was testing a particular feature in one module from my social networking project. Most of the activities of this project are done manually as we are not into automation. The functionality is of adding contact who are listed in the site. A user clicks on the contact and sends a add request based on this a userid is created for the person who requested in the approval list of the user for whom a request is made and upon approval another user id is created for the user who approved and in this way both will have these contact in their contact list and can communicate. Here what I did was a normal positive flow of the functionality and in the DB and in the UI the data is repored properly. Now what I did was removing user A from the contact list of User B. Then the user A request User B to be his contact and three or four times the User B rejects and finally accepts and the user ids are created. Now again what I did was User A requests for User B to be friend and User B rejects few times and then User B request User A to be friend and User A accepts User B but what happened when this flow was done is that only in User A the user Id was created and for User B the user id was not created and when this was debugged there was a condition in the procedure which was not satisfied because of repeated request. So testing in such a way is always a difficult task because we need to keep a track of what is being done and also report the process to the development team to reproduce the bug. It was strange and confusing to see the results.
My point is try to find out the hidden bugs in the system that might occur for special conditions and causes strong impact on the system. You can find such a bugs with some tips and tricks.
Tips to find these kind of hidden bugs are:
How to find a bug – A Question?