Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What does regression test mean?

Could anyone explain the word regression test in an understandable way?

like image 470
never_had_a_name Avatar asked Aug 12 '10 03:08

never_had_a_name


People also ask

What is meant by regression in testing?

Regression testing is testing existing software applications to make sure that a change or addition hasn't broken any existing functionality.

What is regression testing and example?

Regression testing is a type of testing where you can verify that the changes made in the codebase do not impact the existing software functionality. For example, these code changes could include adding new features, fixing bugs, or updating a current feature.

When should regression testing be done?

When Should Regression Testing Be Taken Up? Whenever a new feature is developed, or when an existing feature is improved or if there are any UI updates made, ideally there is a dier need to perform software regression testing.

What is regression testing why it is necessary?

What is regression testing? Regression testing has several uses, but its primary function is to test software that has recently undergone changes. It helps software developers determine whether or not a system can handle changes without compromising efficiency.


7 Answers

Regression test is a test that is performed to make sure that previously working functionality still works, after changes elsewhere in the system. Wikipedia article is pretty good at explaining what it is.

Your unit tests are automatically regression tests, and that's one of their biggest advantages. Once those tests are written, they will be run in future, whenever you add new functionality or change existing functionality. You don't need to explicitly write regression tests.

like image 134
Igor Zevaka Avatar answered Oct 19 '22 18:10

Igor Zevaka


Notwithstanding the old joke, "Congress" is not the opposite of "progress;" "regress" is. For your code to regress is for it to "move backward," typically meaning that some bad behavior it once had, which you fixed, has come back. A "regression" is the return of a bug (although there can be other interpretations). A regression test, therefore, is a test that validates that you have fixed the bug, and one that you run periodically to ensure that your fix is still in place, still working.

like image 37
Carl Manaster Avatar answered Oct 19 '22 18:10

Carl Manaster


The word regression as coined by Francis Galton means

Regression: The act of going back

I.e. it is the phenomenon/technique in software testing to check any change / bug fixes hasn't impacted the existing functionality of the system. Thus the intent of regression testing is to ensure that a change, such as a bug fix should not result in another fault being uncovered in the application.

Regression Testing is required when

  • there is a change in requirements and code is modified according to the requirement
  • a new feature is added to the software
  • defects are fixed
  • a performance issue is fixed

Regression testing can be done both manually and automated.

These are some tools for the automation approach:

  • QTP
  • AdventNet QEngine
  • Regression Tester
  • vTest
  • Watir
  • Selenium
  • actiWate
  • Rational Functional Tester
  • SilkTest
like image 21
Quality Assurance Avatar answered Oct 19 '22 17:10

Quality Assurance


During a regression test, testers run through your application testing features that were known to work in the previous build.

They look specifically for parts of the application that may not have been directly modified, but depend on (and could have residual bugs from) code that was modified.

Those bugs (ones caused by bugs in dependent code even though they were working before) are known as regressions (because the feature was working properly and now has a bug...and therefore, regressed).

like image 21
Justin Niessner Avatar answered Oct 19 '22 18:10

Justin Niessner


Regression testing is a part of testing activity, which can be start after
modification has been made to check the reliability of each software released.
It's nothing but an impact analysis to check wheather it not affecting critical
area of the software.

like image 22
parag.rane Avatar answered Oct 19 '22 18:10

parag.rane


  1. Do unit test
  2. Do integration test
  3. After (1) and (2) are passed, do regression test

In simple term, regression test is to repeat step (1) and (2) again.

like image 39
X.Creates Avatar answered Oct 19 '22 17:10

X.Creates


Regression testing basically perform after completing of retesting. The main purpose of regression testing is to check the impact of modification. Whether still our application is acting stable.

Its necessary to perform a regression testing because sometimes it happened after retesting or while fixing bug developer fixed the bug and missed out something on other code or on dependent code

like image 33
Prateek chawla Avatar answered Oct 19 '22 18:10

Prateek chawla