QA–QC Arena – Software Testing Home for beginners and experts

Dealing with Intermittent Bugs

  

As a Software Tester, I am sure you may have found yourself in a situation where you encounter a peculiar glitch, and your first instinct is that it’s a Bug. But wait, after retesting, everything seems to work perfectly, leading to the dreaded thought, maybe it’s not a Bug. The cycle repeats as the issue resurfaces unpredictably, leaving you unsure of its nature. 😂

Well, it's the frustrating yet fascinating world of Intermittent Bugs that play hide-and-seek, sometimes leaving us clueless. 😆

An Intermittent Bug is nothing but a Bug that does not occur consistently. Dealing with Intermittent Bugs is a complex task as they are difficult to replicate.

Below are the ways that may help while dealing with Intermittent Bugs

🎯 Monitor and analyze the application logs.

🎯 Analyze the conditions or patterns as below. While investigating play with one variable at a time.
✔ Specific Steps
✔ User & User Permissions
✔ Error message (if any)
Setup/Configurations
Integration with other applications (internal or external)
Environment
Application Software (e.g. Browser)
System Software (e.g. Operating System)
Time, Time intervals

🎯 Collaborate with Developers and other Testers to investigate.

🎯 If feasible in the respective context, always record your test sessions. This will not merely assist in understanding the steps to reproduce Bugs or intermittent Bugs, but will also serve as a product knowledge repository in the future.

If you have found this helpful, please consider sharing it with fellow Software Testers.

If you have any questions and want to connect with me? Feel free to book a 1:1 meeting.

Happy Testing, Keep Learning, Keep Growing 👍 

The 2025 State of Testing Survey is now live!

  

Hello Testing Professionals,

I hope you are all doing well and have had a chance to explore my recent blog. If not, I encourage you to check it out.

In this post, I share some exciting news. But first, let me ask you a couple of questions -
🎯 Are you curious about the future direction of Software Testing as we approach 2025?
🎯 Would you like an opportunity to share your insights with the global Software Testing community?

Here’s the big news: the annual State of Testing Survey is now live! This survey gathers insights from Software Testing professionals worldwide, spanning various industries. It’s a unique opportunity to contribute your experiences, current practices, and predictions for the future of our industry. If you'd like to be part of this collective voice and share your thoughts, the global Software Testing community love to hear from you! Answer the survey now.

To learn more about the State of Testing Survey, please explore further here.

Also, discover insights from the past decade with 10 Years of State of Testing reflection.

Keep Learning, Keep Growing 👍

How to improve your Software Testing skills?

  

In casual discussions with friends (Software Testers) or while taking interviews, I often ask this question, what do you do to improve your Software Testing skills?

In this blog, I have tried to answer the question by consolidating some quick tips (to improve your Software Testing skills) that may help you to become a better Software Tester.

🎯 Revise your Software Testing fundamentals frequently –
Staying rooted in the fundamentals is very critical. Revisiting core concepts helps you to keep your base strong. It also ensures that even as new technologies and tools emerge, you can apply them with a solid understanding of how testing works at its core. Try to set some time aside each week/month (as feasible) and revisit Software Testing fundamentals.

🎯 Read Blogs/Articles/Magazines on Software Testing, watch Videos, listen to Podcasts -
The Software Testing world is constantly evolving and staying updated is not at all optional. 😊
Try reading content from various sources including blogs, articles, and magazines which provide diverse perspectives from different experts, helping you learn new techniques, trends, and challenges faced by others.
Watch videos on various YouTube channels, tutorials, and podcasts which will allow you to grasp concepts more interactively. Subscribe to newsletters from leading Software Testing websites, communities, and follow thought leaders in the Software Testing space. This will help you stay updated with the current and upcoming trends in Software Testing.

🎯 Read Books on Software Testing 📚 –
Books offer in-depth knowledge and cover theoretical and practical aspects. Reading books by renowned testers expands your understanding of Software Testing, introduces you to different perspectives and schools of thought, sharpens your critical thinking & problem-solving skills, paves the way to learn from the experience of the author, etc. You’ll also gain insights into case studies and examples of real-world testing challenges and solutions. Do research about the Software Testing books and purchase a few (eBook/Paperback) as per your interest and needs and make sure you dedicate the time to reading them.

🎯 Pen down your thoughts and experiences (as a Blog post or LinkedIn post) and share them with the Software Testing Community –
Documenting your thoughts, experiences, and learnings through writing helps you organize your knowledge, think critically, and solidify what you’ve learned. Whether through blogging, posting on LinkedIn, or contributing to forums, you can not only build your personal brand but also get feedback from the Software Testing community. Sharing experiences with the community can trigger discussions, provide new insights, and help you grow by interacting with other testers.

🎯 Practice Software Testing by Testing some applications daily –
Testing isn’t just a theoretical skill—it’s practical. The more you practice, the sharper you get. You can practice by testing applications or software you interact with daily. This will help you hone your skills in generating test ideas, creating test cases, identifying bugs, and understanding different application behaviors. It also improves your exploratory testing abilities, critical thinking, and problem-solving skills. Remember, the more you expose yourself to varied applications, the more your ability to adapt and test different systems improves. You may want to begin here.

🎯 Pair with fellow Testers and do Pair Testing and seek feedback –
Pair testing is a collaborative practice where two testers work together to test the same application or feature. It enables knowledge sharing, offers multiple perspectives on the same problem, and increases efficiency. By pairing with another tester, you not only learn new techniques or shortcuts but also develop communication skills that help you articulate your thoughts and collaborate better. Seeking feedback from your peers also enables you recognize blind spots and identify areas for improvement.

🎯 Collaborate with different Stakeholders within and outside of your Projects and learn from everyone
Try to find opportunities to meet and discuss (beyond the regular tasks) with different Stakeholders within and outside of your Projects. Try to understand the Quality Narrative (how different stakeholders think and talk about quality) that is in place. Don’t limit your discussions to the Product, BA, and Development Teams, but also try connecting with UX, DevOps, Infrastructure, Customer Support, Sales & Marketing, and HR Teams as well.
In addition, try to understand your Application(s) Architecture, Technology Stack, Business, Customers and Users, Competitors, how your company makes money, etc. This will pave the way to bring a different perspective to what you do as a Software Tester and lead to shared understanding along with clarity that plays a critical role in delivering software solutions that are capable of solving customers' problems.

🎯 Explore Tools and read the Documentation
Have your Tools repository ready. Find and explore new Tools to aid your testing activities. When you plan to explore and learn a new tool, consider reading the documentation of the respective tool in addition to the other resources (videos, blogs, etc.). Keep experimenting (as feasible and applicable in your context) and keep your Tools repository updated.
If problem-solving (beyond day-to-day tasks) is your passion and if you love automating the tasks, try creating some utilities and share them within the Team and seek feedback.

🎯 Spend some time on solving Puzzles
Solving puzzles can be an enjoyable way to sharpen your analytical skills and improve your attention to detail qualities that are essential in Software Testing. By tackling challenges like Crosswords, word searches, or unscrambling words, you train your brain to recognize patterns, think critically, and spot subtle details. This puzzle mindset is valuable in testing, where discovering hidden bugs and understanding complex systems requires careful observation and logical thinking.
Whenever you get an opportunity (maybe over the weekends), try spending some time solving the puzzles (e.g. Crosswords, word search, unscrambling the words, etc.). You may want to try out my Book Software Testing Crossword Puzzles.

🎯 Use Mnemonics to aid your Testing activities –
Mnemonics (a technique that can assist in remembering information) can help speed up your testing activities by helping you remember essential steps, criteria, and potential areas to test without having to check documentation repeatedly. Search for Software Testing mnemonics and also try creating your personalized Mnemonics (as applicable to your context) to focus on specific testing challenges or workflows. Check out my blog on this topic.

🎯 Practice your note-taking and documentation skills –
As a Software Tester, while doing our day-to-day job we need a lot of information. Maintaining or documenting this information in an organized way becomes a very crucial task. Check out the documentation areas that a Software Tester generally deals with.
Be it a professional front (while working on a project) or a personal front (while learning or creating content) note-taking and documentation skills are very critical.
As time permits, use your knowledge, experience, awareness, and humor, and try creating some Software Testing related content and publish them on your social and business platforms. To begin with, you can try out a thoughtful meme on Software Testing that readers can easily resonate with without offending and can smile.

🎯 Join Crowdsourced Testing platforms and seek opportunities –
Crowdsourced testing platforms like uTest, and TesterWork allow testers to gain hands-on experience with real-world projects. You get to test applications from various domains and industries, which broadens your skill set. Additionally, you can earn while learning and networking with other testers worldwide.

🎯 Participate in Software Testing competitions –
Competitions like testing hackathons and bug bounties sharpen your testing skills in a competitive and fun environment. These events challenge you to think quickly, be creative, and test applications in new ways. By competing, you gain exposure to time-sensitive testing, which sharpens your skills under pressure. You also learn from others in the community by observing their approaches and testing techniques.

🎯 Join Software Testing Communities, participate in discussions, get your questions answered & help others resolve theirs –
Being active in Software Testing communities allows you to connect with other testers, discuss trends, and get advice on specific challenges you face. Communities like the Ministry of Testing, The Test Chat, The Test Tribe, and Agile Testing Alliance are excellent places for discussions, learning, and sharing knowledge. Engaging with the community helps you learn from others, stay motivated, and collaborate on projects or ideas. Helping others with their problems also strengthens your understanding of the subject.

🎯 Attend Software Testing events (Meet-ups, Conferences, Webinars, etc.) –
Attending meet-ups, conferences, and webinars is an excellent way to enable your learning and networking opportunities. While virtual conferences are really good and worth attending, I recommend attending in-person events as they enable you to meet industry professionals, connect with the Speakers and the Delegates, make new friends, meet your existing connections, former coworkers, and/or friends, meet Community Builders & Thought leaders. In addition, it also enables you to participate in a variety of Contests, enables you to witness and understand the importance of Planning, Collaboration & Execution of an event. Check out my article about ATAGTR2023.

🎯 Meet with Software Testing professionals (besides regular work)
Try to meet another Software Testing professional (besides regular work) and have a long chat over Tea/Coffee. 🧋
The respective Tester could be your friend, someone from your Team, from a different Team, or maybe from a different organization, playing a different role and having a different set of responsibilities. Check out my blog on this topic.

🎯 Update your resume, try applying for job openings, and attend interviews
First of all, ask this question yourself – When was the last time I updated my resume/applied for a job opening/attended an interview?
😀
Well, even if you’re not actively looking for a change, try updating your resume regularly and applying for job openings. If you are receiving a call for interviews, do attend them.
Resume preparation will enable you to think about your overall experience and organize your profile. Check out my blog on this topic.
Job Search will enable you to understand the current industry demands in terms of skills and experience. It will also reveal areas where you might need improvement or point to emerging skills you may want to learn.
Attending interviews will enable you to practice articulating your expertise, discussing testing concepts, and explaining your approaches to testing problems. It will also enable you to get valuable feedback on your knowledge and skill gaps.

These are the tips/points I can think of. I am sure, the above list can be extended with some additional tips. Please feel free to add your input in the comment section below.

Important Note
These are just the list of tips. Every individual has different ways of learning and gaining knowledge. It’s not necessary that you need to try out everything mentioned above. Consider your context (likes, dislikes, needs, area of interest, etc.) and adapt accordingly.

If you have read the post until this point and if you have found this helpful, please consider sharing it with fellow testers or with someone in your network who may benefit from this. 😀

If you have any questions and want to connect with me? Feel free to book a 1:1 meeting.

Keep Learning, Keep Growing 👍