“Cannot Reproduce”: 10 Steps to Get Rid of Persistent Bugs

TestFortExpert by TestFortExpert on 03/7/2014

“Cannot Reproduce”: 10 Steps to Get Rid of Persistent Bugs

Unreproducible bugs can easily make a tester’s existence painful. Too often testers find a bug, then report it and get the answer “This is not a bug – I can’t reproduce it.” Still, the bug may be there, awaiting its next victim.

Unreproducible bugs can be very much expensive because of their increased lifetime and investigation time. They may as well have a quite damaging effect on your product perception in case the users reporting such bugs are ignored. Therefore, testers should do better to prevent them.

Here are 10 things testers can do to reduce the number of unreproducible bugs even now.

  1. Regularly do stress testing of your system unless you want to run across some unexpected failures when it is heavily loaded.
  2. Test timeouts. Make tests which fake or mock dependencies for timeout code testing. If the timeout code works wrong, it can cause a bug appearing only under certain conditions of the system.
  3. Test with optimized and debug builds. It happens that a good debug build works right, but your system fails in some strange ways as soon as optimized.
  4. Test with constrained resources. It’s a good practice to simulate the reduced network bandwidth as well as minimize the number of data centers, threads, machines, processes, available disk space and memory.
  5. Test for longevity. There are some bugs that require a long time to expose themselves. For instance, persistent data can become corrupt over some time.
  6. Utilize dynamic analysis tools such as memory debuggers regularly. They help identify numerous categories of unreproducible threading and memory issues.
  7. Perform fuzz testing to check your system’s hardiness at the time of enduring bad data.
  8. Always test the error handling code. Usually this is best achieved by mocking and faking the component which triggers the error.
  9. Remember to test concurrent data access when it’s the system’s feature. And if it’s not, verify that your system rejects it.
  10. Save the test logs for later potential analysis.

These seemingly obvious and not so obvious software testing guidelines will help you reduce the chances of “can’t reproduce” bugs to occur in your project.

Inspired by Google Testing

We Work With

Having one outside team deal with every aspect of quality assurance on your software project saves you time and money on creating an in-house QA department. We have dedicated testing engineers with years of experience, and here is what they can help you with.

Software is everywhere around us, and it’s essential for your testing team to be familiar with all the various types and platforms software can come with. In 21+ years, our QA team has tested every type of software there is, and here are some of their specialties.

There are dozens of different types of testing, but it takes a team of experts to know which ones are relevant to your software project and how to include them in the testing strategy the right way. These are just some of the testing types our QA engineers excel in.

The success of a software project depends, among other things, on whether it’s the right fit for the industry it’s in. And that is true not just for the development stage, but also for QA. Different industry have different software requirements, and our team knows all about them.

Icon Manual Testing

Maximum precision and attention to detail for a spotless result.

Icon Testing Automation

We’ll automate thousands of tests for all-encompassing coverage.

Icon Testing Outsourcing

Outsource your testing needs to a team of experts with relevant skills.

Icon Testing Consulting

Overhaul your QA processes to achieve even more testing efficiency.

Icon QA

Thorough Quality Assurance for a project of any scale or complexity.

Icon API Testing

Verify the correct operation of as many APIs as your project needs.

Icon IoT Testing

Stay ahead of the growing Internet of Things market with timely testing.

Icon Web App Testing

Reach out to even more customers with a high-quality web application.

Icon Mobile App Testing

Help users fall in love with your mobile app with our texting expertise.

Icon CRM/ERP

Make sure your CRM/ERP system meets the needs of the stakeholders.

Icon Desktop Application Testing

We’ll check the stability, compatibility, and more of your desktop solution.

Icon Functional Testing

Is your app doing everything it’s supposed to? We’ll help you find out!

Icon Compatibility

Check how your solution works on different devices, platforms, and more.

Icon Usability

Find out if your software solution provides an engaging user experience.

Icon UI

Make sure your application’s UI logic works for all categories of users.

Icon Regression

We’ll verify the integrity of your application after recent code changes.

Icon Online Streaming & Entertainment

Stay on top of the media industry with a technically flawless solution.

Icon eCommerce & Retail

Does your store meet customer needs? We’ll help you know for sure!

Icon HR & Recruiting

Streamline HR processes with a solution that works like a clock

Icon Healthcare

Test the functionality, stability, scalability of your app and more.

Icon Fintech & Banking

Give your users what they want: a powerful, secure fintech product.


We use cookies to ensure your best experience. By continuing to browse this site, you accept the use of cookies and "third-party" cookies. For more information or to refuse consent to some cookies, please see our Privacy Policy and Cookie Policy