I was asked this question in an interview recently. Just wanted to see what your opinions were on this...
|
Regression testing is specifically looking for bugs in functionality that was previously working and has "regressed" to a non-working state. I've never heard "retesting" used except in a common-sense way: Retesting is simply testing something again after it has been previously tested, and is a more general term since retesting doesn't say anything about the state of the software before retesting. You can retest functionality that has never worked by running tests on it again, but you can't regression test functionality that has never worked properly because only functionality that has worked previously can "regress" to a non-working state. |
|||
|
|
|
These definitions will vary from one organization to the next. In the testing jobs I've had, regression testing has meant testing that verifies that features that used to work still work. In that context, a regression is a bug that did not exist in an earlier version of the product. In the testing jobs I've had, regression testing occurs after all new features have been tested, although the timing of regression testing is not essential to its definition. Re-testing is what it sounds like: testing something again. You could say that regression testing is re-testing with a particular goal (looking for bugs in things that used to work) in the specific context (in a product for which an earlier version exists). |
||||
|
|
|
Regression testing is testing if the existing functionality is not broken due to the implementation of new features. For example I would like to test if the existing security of the facebook application is not broken by the implementation of its new feature "X". Re-testing is the testing done by the tester to check if the application works properly after a bug is fixed. The application should be re-tested after the issues are fixed or got resolved in the later builds. |
|||||||||
|
|
Retesting is basically to execute the test cases which failed in last build. So in other words, Retesting is verifying the fix ONLY. Regress means to go back to some last unstable or less developed state. When a CHANGE is made in a piece of software then we test the application to see what effect that CHANGE has brought in application. First we verify the fix, then see what areas this change has effected and test to see if that area is working fine i.e. there are no ripples. Similarly, when a change is made in application then we have to update our test cases for regression testing: 1: Add test cases in test suite to verify the new functionality 2: Remove obsolete test cases which are no longer needed (some old functionality might be longer available after change in code) 3: Update currently existing to accommodate changed code. For instance, change in code might require some tweaking in steps of already existing test cases |
|||
|
|
|
Re-testing is just testing the bug fix and regression testing is something when a bug is fixed it doesn't affect the other functionalities in the application.When regression testing is done its like testing the whole application. |
|||
|
|
|
Re-testing is just testing whether the bug is fixed or not. Regression means after the bug fixing test the other areas also to see the impact of the change. |
|||
|
|
|
Retesting: Retesting is the process in which tester verify that defect reported by him is fixed by the development team or not. Regression Testing: Regression Testing is the process in which tester verify that when the defect is fix by the developer by some code change ,then this code change does not impact the other functionality of the product. |
|||
|
|
