In this white paper, I will share our experience on how collaboration ot testers and developers can help to deal with the most complicated bugs.
Team Leader of Network Testing Team
Developer must get all the information required for bug fixing from the bug report.
How it was:
We have big and complicated projects. For example, one has 4 different component types, tricky network interaction between them, drivers, and database. Taking into account this complexity, there are a lot of bugs, which are very hard to reproduce, sometimes it’s even hard to detect which component caused the problem. Meanwhile there are 6 different log types and several memory dumps, which can help in different situations. Before, each tester decided for himself what information should be included in bug report, and frequently developer wanted more or other data. It was a real problem for the hardly reproduced bugs: when developer told tester what information he needed, it was already impossible to get it, so tester had to find a way to reproduce the situation, sometimes, without even knowing which component had caused crash.
While creating bug report, tester can’t know for sure what information developer will need, especially if tester does not manage to reproduce the bug.
Our developers prepared a special instruction for us. They divided all bugs in several types by specific characteristics, e.g. by project components or situations when they appear (crash, deadlock, etc.). Developers provided each bug group with the description of some specific signs and list of data that they wanted us to add to the bug report.
It’s also very useful if testing team has its own knowledge database with trouble shooting and problem localization cases.
Developers get all necessary information at once and do not waste their time and time of testers. Knowledge databases are constantly updated minimizing the number of problems with complicated bugs.