Monday 13 January 2014

RBT - A better option for regression testing?

RBT - A better option for regression testing?

Is the effectiveness of your regression testing experiencing the “law of diminishing returns”? Is the business value of your testing being questioned? These are most likely to occur over a period of time, as the regression test case effectiveness will decrease over time and this would result in regression defect leakages. It is here where Risk based testing gains its importance. Risk based testing is basically a test on projects based on risks or is in other words it is a  type of software testing that prioritizes the tests of features and functions based on the risk of their failure.

Why RBT?
To analyze this we first need to understand what the drawbacks of traditional regression testing are. The most common drawback seen is that the regression test suite is built by accumulating test cases from several releases. And the execution of this test suite depends on factors like time, test environment and test data. The result being that the test cases are not prioritized based on business criticality and that the requirements are not updated after every release. Also, it is common that the impact of release specific changes are not assessed and also that there are no regression specific test environment and test data strategies. Risk based testing helps address some of these issues like, prioritization of test cases, impact assessment, eliminating non-productive test cases etc.

How to adopt RBT?
Most of us would be, knowingly or unknowingly, using risk based testing during our test phases, but without proper risk assessment. This can happen mainly because of the lack of business domain knowledge or the increasing size/complexity of the application under test.
The first step we need to take is to identify what is critical. Next you have to calculate the risk factor. Then categorize and prioritize based on the risk factor. Some of the things to be kept in mind while calculating the risk factor are complex areas, changed areas, Areas with many defects before, History of prior use etc.
One basic formula for calculating the risk is:                                                                                                                
Risk = (probability of failure) * (Cost of failure)
And based on this calculated risk, prioritize your test cases so that you execute only the most relevant ones.

Conclusion
Day by day, the complexity of application is increasing, thereby demanding a better regression testing strategy. Risk Based testing is definitely one of the best strategies that testers can look into here. This definitely saves your time and reveals the most ‘risky bugs’!!!

No comments:

Post a Comment