Table of Contents Author Guidelines Submit a Manuscript
The Scientific World Journal
Volume 2014, Article ID 316014, 9 pages
http://dx.doi.org/10.1155/2014/316014
Research Article

Using Fuzzy Logic in Test Case Prioritization for Regression Testing Programs with Assertions

Faculty of Computing and Information Technology, University of Tabuk, P.O. Box 1458, Tabuk 71431, Saudi Arabia

Received 25 October 2013; Accepted 2 December 2013; Published 27 April 2014

Academic Editors: S. K. Bhatia and A. K. Misra

Copyright © 2014 Ali M. Alakeel. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

Program assertions have been recognized as a supporting tool during software development, testing, and maintenance. Therefore, software developers place assertions within their code in positions that are considered to be error prone or that have the potential to lead to a software crash or failure. Similar to any other software, programs with assertions must be maintained. Depending on the type of modification applied to the modified program, assertions also might have to undergo some modifications. New assertions may also be introduced in the new version of the program, while some assertions can be kept the same. This paper presents a novel approach for test case prioritization during regression testing of programs that have assertions using fuzzy logic. The main objective of this approach is to prioritize the test cases according to their estimated potential in violating a given program assertion. To develop the proposed approach, we utilize fuzzy logic techniques to estimate the effectiveness of a given test case in violating an assertion based on the history of the test cases in previous testing operations. We have conducted a case study in which the proposed approach is applied to various programs, and the results are promising compared to untreated and randomly ordered test cases.