Regression test automation

Hi All,

In our company we are planning to automate our regression test cases. Then what is the possibility of using test automation in regression testing?
Why regression testing is vital in object oriented programing
what is the difference between REGRESSION TESTING AND RETESTING?

Thanks in Advance
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Suveer PatilQA AnalystCommented:
Difference between Regression Testing and ReTesting:

Regression Testing: Whenever any changes, updation or deletion of a feature is done in the application then the testing which is done to make sure whether the changes are affecting any other functionalities or not is called as Regression Testing.

ReTesting: Whenever a bug is fixed then the testing which is done to test whether the bug is fixed or not is called as ReTesting.

ofcourse for regression cycles it is better to use automation testing compared to manual testing as regression will have repetitive tasks. i mean you have to execute the same cases again and again which is time consuming.

Best Automation tools: HP's QTP, IBM's Rational, Seague's Silk and test complete
open source tools: Selenium, AutiIT, etc
Regression Testing: you have some project/product with some set of functionality working and released.
now if you want to make some changes/some bug fixes in this project/product, then you run the tests to make sure already working functionalities are not broken due to these changes. and to make sure you do some testing. and that is called regression testing.

retesting: you have done the testing of some project and now if you fixes some thing or add some new funcionalities, then you just want to rerun all the tests again to make sure it is tested against new changes.

the difference is against what set of features you are testing against. in regression you are testing already existing features, in retesting you are testing newly added features.

Automation is highly commended in regression since this is repetitive job and you want it to run as part of standard process.
What is regression testing:
Regression testing is any type of software testing which seeks to uncover software regressions. Such regressions occur whenever software functionality that was previously working correctly, stops working as intended. Typically regressions occur as an unintended consequence of program changes. Common methods of regression testing include re-running previously run tests and checking whether previously fixed faults have re-emerged.

Regression testing Vs Retesting:
In regression testing you execute all or the subset of all testcases in order to find issues which might have incurred because of bug fixes. Example is Hotfixes or patches. you do regression testing for them.

In retesting you might have to change testcases or execute testcases to test something which is completely changed. Like new version of the product you need to retest and you don't  do regression on that.

Test automation is mainly targetted to regression testing. Things don't change much and you can use existing scripts to check it against any fixes done. What all tools and technologies you can use for automation depends upon the technologies, platform support and product networking concepts used in the product. Now a days open souce is providing quite a good support.
Re- test
Re-testing means we testing only the certain part of an application again and not considering how it will effect in the other part or in the whole application. Re-testing after fixes or modifications of the software or its environment. It can be difficult to determine how much re-testing is needed, especially near the end of the development cycle. Automated testing tools can be especially useful for this type of testing as well.

Regression Testing
Testing the application after a change in a module or part of the application for testing that is the code change will affect rest of the application. This is testing the whole application again after the fixes or the modifications are done on the software. This is mostly done at the end of the Software development life cycle.
Adequate coverage without wasting time should be a primary consideration when conducting regression tests.
 Mostly Automated testing tools are used for this type of testing.  As a method of time & cost reduction we can use automation tools for that.
So we can basically use opens source automation tools as an initial step for the Automation. For that we can use Marathon like automation tools. There are some open source tools as well.
According to the company size and the profit margins we can go for the QTP like tools as well.
According to the attached graph, the costs associated with finding and fixing problems increases exponentially later in the product life cycle. So the earlier that testing is performed the greater the benefits. So with test automation, its easy to run complete regression tests on a daily basis. Running regression tests early keeps on the lower part of the following graph curve, where its less expensive to resolve.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Regression is also retesting, but the objective is different.


Regression testing is the testing which is done on every build change. We retest already tested functionality for any new bug introduced due to change.

Retesting is the testing of same functionality, this may be due to any bug fix, or due to any change in implementation technology.

QTP will help in smoke and Regression Testing..

Must Read -: Selecting Test cases for Regression Testing
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Project Management

From novice to tech pro — start learning today.