Top Skills For Debugging a Complicated Bug
Geosley Andrades
Sr. Director | Automation Evangelist | AI Enthusiast | Community Builder | Speaker
1. Know your Product Well.
One of the prime skills one needs to possess is a clear understanding of the project architecture. Being aware of the architectural setup and design patterns aids with debugging. Knowledge about various components, the connection between components along with their attributes and properties. This will give you a significant advantage when complicated bugs occur helping you know exactly where to start. If you’re are a tester team up with your developer friend, solution architect to understand this in-depth. It always a good practice to have a clear understanding of all the workflows mentioned in the requirement document to be a master debugger.
2. Paying Attention to detail.
When you pay attention to detail the big picture will solve itself. Don’t jump into finding the solution. Get the exact context of the bug and be sure to have detailed notes on how to reproduce the issue. Most of the time there is a normal tendency to run away from the bug and throw the ball in someone else’s court. So, before you start make sure to clear out any assumption or confusion that may arise and save your precious time during your investigation.
3. Isolate working Component from the problem - Learn to go Step by Step
It's a huge world out there. Debugging can at times be a very complicated exercise. Approach the problem systematically. Take baby steps. The rule of “Divide and Conquer” is so powerful that success will come your way if you isolate the problem. Start replacing the simple things first which you confident on. Make no assumptions.
4. Mastering Debugging/Developer tools.
Debugging and Developer tools are your friends use them whenever possible. Whenever you come across a bug don’t miss to capture the logs and understand the pattern of occurrence. Be familiar with tools that can help you with setting breakpoints, inspecting memory leaks. Monitor Splunk logs, Logic monitor alerts, using fiddler traces can help speed up your investigation.
5. Document your Learning
While celebrating fixing a bug is important. Treat each bug as a learning experience. An important skill not to miss out on is to keep track of the bugs encountered and fixed. Taking this step proactively to document your learning will help you manifold. At some stage, you start to notice recurring patterns and the bug will no longer be complicated.
Happy Debugging!
Engineer @ Microsoft | ? Developer Productivity | Open Source Enthusiast | ??? Blogger | Mentor |???Tech Talks on YT | Former MoEngage, Goibibo, Jenesys
4 年Insightful, this is most close to how I would do (may be not in the same order), debugging is my favourite. Hope you win Geosley Andrades ?? See you there (you will get notified for the new schedule soon)
Software Engineer ? Apple
4 年Nice post Geosley Andrades I had also written something similar to this on Debugging. Hope you like it too: https://www.qatouch.com/blog/debunking-the-debugging-myths-in-test-automation/
Software Tester | QA Lead | QATimes.in | 88K+ followers | Open for Collaborations
4 年Nicely written and beautifully explained. Thanks for sharing ??
Principal QA Engineer at Cornerstone OnDemand
4 年Good tips on debugging, thanks for the article Geosley Andrades
Creative Problem Solver, Passionate to learn, love to motivate people to achieve their goals
4 年Simple, concise, powerful.?