scholarly journals Test Case Reduction Using Ant Colony Optimization for Object Oriented Program

Author(s):  
Sudhir Kumar Mohapatra ◽  
Srinivas Prasad

Software testing is one in all the vital stages of system development. In software development, developers continually depend upon testing to reveal bugs. Within the maintenance stage test suite size grow due to integration of new functionalities. Addition of latest technique force to make new test case which increase the cost of test suite. In regression testing new test case could also be added to the test suite throughout the entire testing process. These additions of test cases produce risk of presence of redundant test cases. Because of limitation of time and resource, reduction techniques should be accustomed determine and take away. Analysis shows that a set of the test case in a suit should satisfy all the test objectives that is named as representative set. Redundant test case increase the execution price of the test suite, in spite of NP-completeness of the problem there are few sensible reduction techniques are available. During this paper the previous GA primarily based technique proposed is improved to search out cost optimum representative set using ant colony optimization.

2022 ◽  
Vol 13 (1) ◽  
pp. 0-0

Software Product Lines(SPLs) covers a mixture of features for testing Software Application Program(SPA). Testing cost reduction is a major metric of software testing. In combinatorial testing(CT), maximization of fault type coverage and test suite reduction plays a key role to reduce the testing cost of SPA. Metaheuristic Genetic Algorithm(GA) do not offer best outcome for test suite optimization problem due to mutation operation and required more computational time. So, Fault-Type Coverage Based Ant Colony Optimization(FTCBACO) algorithm is offered for test suite reduction in CT. FTCBACO algorithm starts with test cases in test suite and assign separate ant to each test case. Ants elect best test cases by updating of pheromone trails and selection of higher probability trails. Best test case path of ant with least time are taken as optimal solution for performing CT. Hence, FTCBACO Technique enriches reduction rate of test suite and minimizes computational time of reducing test cases efficiently for CT.


2020 ◽  
Vol 11 (2) ◽  
pp. 1-14
Author(s):  
Angelin Gladston ◽  
Niranjana Devi N.

Test case selection helps in improving quality of test suites by removing ambiguous, redundant test cases, thereby reducing the cost of software testing. Various works carried out have chosen test cases based on single parameter and optimized the test cases using single objective employing single strategies. In this article, a parameter selection technique is combined with an optimization technique for optimizing the selection of test cases. A two-step approach has been employed. In first step, the fuzzy entropy-based filtration is used for test case fitness evaluation and selection. In second step, the improvised ant colony optimization is employed to select test cases from the previously reduced test suite. The experimental evaluation using coverage parameters namely, average percentage statement coverage and average percentage decision coverage along with suite size reduction, demonstrate that by using this proposed approach, test suite size can be reduced, reducing further the computational effort incurred.


Author(s):  
Vedpal ◽  
Naresh Chauhan

Test case prioritization technique creates the sequence of test cases for execution in such a way that the test cases with higher rate of fault detection are executed earlier than those test cases which have lower rate of fault detection. In this paper a new algorithm is proposed to prioritize the test cases based on coverage of object oriented programming factors. The factors are considered on the basis of complexity and probability of errors introduced by them. For the experimental validation and analysis the proposed test case prioritization algorithm is applied on two case studies. The analyzed case studies are implemented in C++ language. By using the presented algorithm it helps to reduce the cost and time for testing the software.


Author(s):  
Bharathi M ◽  
Sangeetha V

<table width="0" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td valign="top" width="593"><p>In this paper, we proposed Fault-Type Coverage Based Ant Colony Optimization (FTCBACO) technique for test suite optimization. An algorithm starts with initialization of FTCBACO factors using test cases in test suite. Then, assign separate ant to each test case called vertex. Each ant chooses best vertices to attain food source called objective of the problem by means of updating of pheromone trails and higher probability trails. This procedure is repeated up to the ant reaches food source. In FTCBACO algorithm, minimal number of test cases with less execution time chosen by an ant to cover all faults type (objective) are taken as optimal solution. We measured the performance of FTCBACO against Greedy approach and Additional Greedy Approach in terms of fault type coverage, test suite size and execution time. However, the heuristic Greedy approach and Additional Greedy approach required more execution time and maximum test suite size to provide the best resolution for test suite optimization problem. Statistical investigations are performed to finalize the performance significance of FTCBACO with other approaches that concludes FTCBACO technique enriches the reduction rate of test suite and minimizes execution time of reducing test cases efficiently.</p></td></tr></tbody></table>


Author(s):  
Dharmveer Kumar Yadav ◽  
Sandip Kumar Dutta

In the software maintenance activity, regression testing is performed for validing modified source code. Regression testing ensures that the modified code would not affect the earlier tested program. Due to a constraint of resources and time, regression testing is a time-consuming process and it is a very expensive activity. During the regression testing, a set of the test case and the existing test cases are reused. To minimize the cost of regression testing, the researchers proposed a test case prioritization based on clustering techniques. In recent years, research on regression testing has made significant progress for object-oriented software. The empirical results show the importance of K-mean clustering algorithm used to achieve an effective result. They found from experimental results that their proposed approach achieves the highest faults detected value than others.


2016 ◽  
Vol 2016 ◽  
pp. 1-20 ◽  
Author(s):  
S. Panda ◽  
D. Munjal ◽  
D. P. Mohapatra

Test case prioritization focuses on finding a suitable order of execution of the test cases in a test suite to meet some performance goals like detecting faults early. It is likely that some test cases execute the program parts that are more prone to errors and will detect more errors if executed early during the testing process. Finding an optimal order of execution for the selected regression test cases saves time and cost of retesting. This paper presents a static approach to prioritizing the test cases by computing the affected component coupling (ACC) of the affected parts of object-oriented programs. We construct a graph named affected slice graph (ASG) to represent these affected program parts. We determine the fault-proneness of the nodes of ASG by computing their respective ACC values. We assign higher priority to those test cases that cover the nodes with higher ACC values. Our analysis with mutation faults shows that the test cases executing the fault-prone program parts have a higher chance to reveal faults earlier than other test cases in the test suite. The result obtained from seven case studies justifies that our approach is feasible and gives acceptable performance in comparison to some existing techniques.


2018 ◽  
Vol 9 (1) ◽  
pp. 287-298
Author(s):  
Euis Nurlaelasari ◽  
Supriyadi Supriyadi ◽  
U. Tresna Lenggana

Pencarian nilai yang optimal adalah permasalahan yang dapat dijumpai pada kehidupan sehari-hari. yaitu seperti, menentukan rute terpendek, menentukan jumlah optimal untuk  persediaan hasil produksi dan lain-lain. Pencarian nilai optimal dapat digunakan untuk memperoleh nilai tertinggi dan terendah dari suatu  permasalahan.  Salah satu  permasalahan  yang  populer  dan dapat  dipecahkan dengan algoritme optimasi   adalah   Traveling   Salesman   Problem   (TSP)   untuk   menentukan   rute   terdekat   dengan menggunakan algoritme Ant Colony Optimization.   Namun pada kenyataannya,  jarak  bukanlah satu- satunya tolak ukur yang dapat diperhitungkan saat melakukan perjalanan. Oleh karena itu, penelitian ini bertujuan untuk melengkapi kekurangan pada penelitian sebelumnya dengan menambahkan variabel lain selain  jarak. Algoritma  Ant  Colony Optimization  digunakan untuk  menentukan objek  wisata dengan menghitung variabel biaya pada sebuah jarak. Sehingga dapat menghasilkan sebuah biaya transportasi terendah. Hasil dari penelitian ini berupa rancangan sistem dengan menggunakan UML (Use case, Class, Sequence, Activity Diagram) dan rancangan aplikasi pemilihan objek Wisata Karawang berbasis android dengan menerapkan Algoritme Ant Colony Optimization. Metode pengembangan sistem yang digunakan adalah  System  Development  Life  Cycle  (SDLC)  Waterfall  serta  rancangan  sistem  berbasis  Object Oriented.


Test case prioritization (TCP) is a software testing technique that finds an ideal ordering of test cases for regression testing, so that testers can obtain the maximum benefit of their test suite, even if the testing process is stop at some arbitrary point. The recent trend of software development uses OO paradigm. This paper proposed a cost-cognizant TCP approach for object-oriented software that uses path-based integration testing. Path-based integration testing will identify the possible execution path and extract these paths from the Java System Dependence Graph (JSDG) model of the source code using forward slicing technique. Afterward evolutionary algorithm (EA) was employed to prioritize test cases based on the severity detection per unit cost for each of the dependent faults. The proposed technique was known as Evolutionary Cost-Cognizant Regression Test Case Prioritization (ECRTP) and being implemented as regression testing approach for experiment.


Regression testing is one of the most critical testing activities among software product verification activities. Nevertheless, resources and time constraints could inhibit the execution of a full regression test suite, hence leaving us in confusion on what test cases to run to preserve the high quality of software products. Different techniques can be applied to prioritize test cases in resource-constrained environments, such as manual selection, automated selection, or hybrid approaches. Different Multi-Objective Evolutionary Algorithms (MOEAs) have been used in this domain to find an optimal solution to minimize the cost of executing a regression test suite while obtaining maximum fault detection coverage as if the entire test suite was executed. MOEAs achieve this by selecting set of test cases and determining the order of their execution. In this paper, three Multi Objective Evolutionary Algorithms, namely, NSGA-II, IBEA and MoCell are used to solve test case prioritization problems using the fault detection rate and branch coverage of each test case. The paper intends to find out what’s the most effective algorithm to be used in test cases prioritization problems, and which algorithm is the most efficient one, and finally we examined if changing the fitness function would impose a change in results. Our experiment revealed that NSGA-II is the most effective and efficient MOEA; moreover, we found that changing the fitness function caused a significant reduction in evolution time, although it did not affect the coverage metric.


Author(s):  
N. Gupta ◽  
D. Saini ◽  
H. Saini

Object-oriented programming consists of several different levels of abstraction, namely, the algorithmic level, class level, cluster level, and system level. In this article, we discuss a testing technique to generate test cases at class level for object-oriented programs. The formal object oriented class specification is used to develop a test model. This test model is based on finite state machine specification. The class specification and the test model is analyzed to select a set of test data for each method of the class, and finally the test cases can be generated using other testing techniques like finite-state testing or data-flow testing.


Sign in / Sign up

Export Citation Format

Share Document