How to Reproduce a Defect?
Let us first understand, what is “Reproducing a Defect”?
If you have landed at a point where a particular series of steps have resulted in a deviation in expected behaviour, then the “steps to reproduce” is the defect field that has a record of the sequence of steps. So, if we follow these steps whenever we encounter the same problem, then this can be referred as reproducible defect.
The amount of data used or screen recorded videos can also be given in addition to the ‘steps to reproduce’. However, you can discard a bug or mark as invalid if the provided information are not relevant or incorrect.
How to write steps to reproduce?
- Be explicit in your approach.
- Consider the data used during testing for easy reference.
- Maintain a proper order while writing the steps.
- Include pre-requisites wherever required.
- Do not write complex steps. E.g. do not suggest using shortcuts, which might be difficult for some.
- While reproducing on a new system, always cross-check your steps. In addition, clear all cookies and cache memory.
- Ensure the sentences are short and meaningful.
Why is it important to reproduce a defect?
Technically, it is believed that you can never fix a defect until you can reproduce it. There are various other importance of reproducing a defect.
The factors that determine if a defect gets fixed are mentioned below.
- Complete information about the defect in the defect report.
- If the exact occurrence of defect is understood by the developer under certain conditions?
- If the developers have the tools and exact versions of the application on which the defect is reported by the testers?
How to Reproduce a Defect?
- Clear all junk files, including cache and cookies.
- Observe every step carefully.
- Look for similar defect or patterns. If the pattern is understood, it would be easier to identify the scenario and reproduce a bug.
- Write each and every step, including test data, system settings, screenshots, server logs, and other factors. This would help in replicating the scenario.
- Do not decide the occurrence of defect from a single instance. Try a few more times to ensure its occurrence.
- You can try some unusual scenarios to explore the application using your creativity. However, you must stick following logical sequences.
- You must verify the same issue on different platforms as soon as it is detected. This helps in identifying the nature of the defect, i.e. browser or device specific.
- You must keep yourself updated with the latest trends and different types of issues and their occurrences. This eases the job to identify any issues.
- Trying to reproduce the issue once occurred might not be helpful every time. At times, analyzing the steps performed can help find the solution.
- You can count on the experience of leads/managers or other team members to find a solution.
- You can discuss the issue with the developers by sharing your screen, in addition to videos and screenshots.
- Ensure the occurrence of issue by reproducing the issues a couple of times. This would help you in replying to the concerns of developers more confidently.
In order to validate and fix a bug, it is very important to ‘reproduce a bug’. It would be a waste of effort given to find and report that particular bug, if the bug is not reproducible.
You need to have a detailed ‘steps to reproduce’ and environment to understand and reproduce a bug. You can fix a non-reproducible defect, but it’s very difficult and time-consuming. A proper communication is another key factor to validate a bug.
You might also like: Unreproducible Bugs – A Bane!