Monday, January 30, 2012

Test Case Prioritization in Software Quality

          I heard many testers, including me, complaining most of the time: “So many Tests and They expect us to do in so less time. That’s Unfair!!!!”. This is the most common problem, faced in our software industry, that management expects 100 percent testing in less time.
You must have heard a phrase “TimeBox the testing”. This is a time management technique in which you can complete the most important tests in a given time and deliver a high quality product. 
Always prioritize your tests to achieve time-boxing in testing. One major task before prioritizing your tests is to work out plans addressing these two concepts:
  • Identify necessary features that are a MUST.
  • Identify the risks associated with the features which will not be tested.
Whenever you make a test case, you must have noticed a “priority” column. This is the easiest way to assign priority. Mostly companies follow three-level priority categorization scheme:

Low: Allocated to the tests, which if not executed, will not cause big upsets.
High: Allocated to all tests that MUST be executed in any case.
Medium: Allocated to the tests which can be executed, only when time permits.

However, this categorization scheme is not mandatory; you can customize it according to your company’s requirement. While setting priority, always keep in mind that you have to set the priority according to criteria which suits your company’s needs. I was going through a research in which analysis was done for prioritized and non-prioritized case with the help of Average percentage fault detection metric.

The research, proved that the number of bugs found per minute are greater in case of non-prioritized test cases as compared to prioritized test cases. Before prioritizing test cases, always consider these things:

·        Criteria which suits your company’s needs.
·        Where a failure would be most severe Test
·        Where a failure would be most visible
·        Always ask customer what is most important to him.
·        Areas which are more complex and where changes are more frequent.
·        Areas which have created most problems in the past.

Adeeba Aatif : A freelance writer and a software Analyst 

Recommended Post Slide Out For Blogger

Site Search