Retesting

What is Retesting? When to use it? Advantages and Disadvantages

What is Retesting?

Retesting is a one kind of the process where testers need to check the specific test cases found as failed with defects during the test cases execution time. Retesting is a depends on the development team that defects are accepted or rejected from their side. So, Retesting can be done after the defect has been fixed by the dev team.

Retesting in software testing is a type of software testing that is performed to verify that an issue or problem identified during testing has been successfully fixed. It involves re-running tests on the system or component to ensure that it is now functioning correctly.

Retesting is an important part of the software development process because it helps to ensure that any issues or problems identified during testing have been properly addressed and that the system is working as intended. It is typically performed after changes have been made to the system to fix an issue and is often an ongoing process as the system is developed and modified over time.

Retesting can be performed by the testing team or by the developers who made the changes to the system. It is typically performed after the issue has been fixed, but before the system is deployed to ensure that the fix has been successful.

Retesting Process:

Retesting is a software testing process that involves running previously failed test cases again after the identified defects have been fixed to verify that the defects have been resolved and the affected functionality is working as expected.

The retesting process typically involves the following steps:

Identify the failed test cases: The testing team identifies the test cases that have failed previously due to defects or issues.

Verify the fixes: The development team fixes the identified defects and verifies the fixes to ensure that they address the issues.

Retest the failed test cases: The testing team re-executes the previously failed test cases to verify that the fixes have resolved the issues and that the functionality is now working correctly.

Document the results: The testing team records the results of the retesting process and documents any issues that were found during the process.

Sign-off: Once all the test cases have been successfully re-executed, and the issues have been resolved, the testing team signs off on the retesting process.

Retesting is typically done to ensure that the software system is functioning as expected after defects have been fixed. It can also be performed during the regression testing process to ensure that the fixes have not introduced new defects or issues in the system. The retesting process is an essential component of the software testing process as it helps ensure that the software system is working as intended and meets the requirements of the end-users.

When to Use Retesting:

Retesting is typically used in software testing when a defect or issue has been identified in a software system, and the development team has made changes to fix the problem. Retesting is used to verify that the fix has resolved the issue and that the affected functionality is now working as expected.

Here are some common scenarios when retesting is used:

After a defect has been fixed:

When a defect is identified during testing, the development team makes changes to fix the issue. Retesting is then used to verify that the fix has resolved the issue, and the affected functionality is now working as expected.

After a change request:

When a change request is made to a software system, such as adding new functionality or modifying existing features, retesting is used to ensure that the changes have not introduced any new issues or affected existing functionality negatively.

After a configuration change:

When a configuration change is made to a software system, such as changing the database or server settings, retesting is used to verify that the system is still functioning correctly.

During regression testing:

Retesting is an essential part of regression testing, where previously executed test cases are run again to ensure that any defects fixed in the system have not reappeared and that the affected functionality is still working correctly.

Retesting is an important part of the software testing process, as it ensures that any defects or issues in the software system are fixed correctly and that the affected functionality is working as intended.

Advantages:

Ensures that issues have been properly addressed: It helps to ensure that any issues or problems identified during testing have been properly addressed and that the system is working as intended.

Increases confidence in the system: By performing retesting after changes have been made, the testing team can increase their confidence in the stability and reliability of the system.

Reduces the risk of issues being discovered after deployment: It can help to identify and fix any issues before the system is deployed, which can reduce the risk of problems being discovered after the system is in use. This can save time and resources that would be needed to fix issues after deployment.

Helps to ensure the quality of the system: It helps to ensure that the system is of high quality and is working as intended after changes have been made. This can increase customer satisfaction and confidence in the system.

Can be automated: Many retesting tasks can be automated, which can save time and resources and make the testing process more efficient.

Disadvantages :

Time-consuming: It can be a time-consuming process, especially when multiple test cases need to be re-executed. This can lead to delays in the testing process, which can impact the overall project timeline.

Limited scope: It is typically focused on re-executing previously failed test cases, which means that it may not cover other areas of the software system that were not tested previously. This can lead to defects or issues being missed, which can impact the overall quality of the software system.

Repetitive: It can be a repetitive process, which can be tedious and demotivating for testers. This can lead to errors being introduced into the testing process, which can impact the overall accuracy of the results.

Not comprehensive: It is typically focused on verifying that previously identified defects have been fixed. It may not be comprehensive enough to identify other defects or issues in the software system.

Costly: It can be a costly process, especially if there are many test cases that need to be re-executed. This can impact the overall budget for the testing process and the project as a whole.

Example:

Imagine that a team is testing a new software application for managing customer orders. During testing, the team discovers an issue where the application is unable to process orders for certain types of products. The development team works to fix the issue and then the testing team performs retesting to verify that the issue has been successfully resolved.

The testing team would re-run the tests that were previously run to identify the issue, as well as any other relevant tests, to ensure that the application is now able to process orders for all types of products correctly. If the issue has been successfully fixed, the testing team can then proceed with additional testing as needed. If the issue has not been fixed, the development team may need to make additional changes and the testing team may need to perform additional retesting.

Conclusion: 

So In way retesting is the most important part of software testing. Retesting is a one of the functional testing type. If you are looking for more types of the software testing then please visit below links.

Retesting Vs Regression Testing

Scroll to Top