Optimization Driven Constraints Handling in Combinatorial Interaction Testing

Optimization Driven Constraints Handling in Combinatorial Interaction Testing

Ram Gouda (Koneru Lakshmaiah Education Foundation, Andhra Pradesh, India) and Chandraprakash V. (Koneru Lakshmaiah Education Foundation, Andhra Pradesh, India)
Copyright: © 2019 |Pages: 19
DOI: 10.4018/IJOSSP.2019070102

Abstract

The combinatorial strategy is useful in the reduction of the number of input parameters into a compact set of a system based on the combinations of the parameters. This strategy can be used in testing the behaviour that takes place when the events are allowed to be executed in an appropriate order. Basically, in the software systems, for the highly configurable system, the input configurations are based on the constraints, and the construction of this idea undergoes various kinds of difficulties. The proposed Jaya-Bat optimization algorithm is developed with the combinatorial interaction test cases in an effective manner in the presence of the constraints. The proposed Jaya-Bat based optimization algorithm is the integration of the Jaya optimization algorithm (JOA) and the Bat optimization algorithm (BA). The experimentation is carried out in terms of average size and the average time to prove the effectiveness of the proposed algorithm. From the results, it is clear that the proposed algorithm is capable of selecting the test cases optimally with better performance.
Article Preview
Top

1. Introduction

The creation of isolated and product-by-product approach of the software development is shifted to the concept of the software product lines (SPL) (Kim et al., 2011). This approach provides various features, like cost minimization and the concept of reachability time in addition to the facilitation of idea for customisable software products. The customisable features of this approach can be either added or separated from the selected software functionality depending on the requirements of the customers or the developers. Eclipse is the commonly used SPL with the presence of number of functions and features that can be either included or obtained from the main framework (Weiss, 2011). The development of interactions among these features leads to the occurrence of fault in the system (Ahmed, et al., 2015; Ahmed, 2016). Thus, the interactions among the features need to be tested with more care (Ahmed, et al., 2017). The testing phase is carried out in order to identify all the defects present in the software (Agarwal, et al., 2010). The defects arise from various sources based on the design of software and the application. Thus, different software testing methodologies are developed and some of them are Boundary Value analysis, Cause- Effect Graphing, and the Equivalence Class Partitioning. Hence, as an unwritten rule, the software testers apply more than one methodology to the software so as to confirm the good quality of the program (Ahmed, et al., 2014).

In software systems, the frequent cause of the defects always arises from the combination of the individual GUI components by catching event transactions (Yuan, et al., 2011). Basically, these types of faults are not resolved using the ordinary testing methods (Bryce, et al., 2011), but in fact, there arise the presence of various constraints in the features. Some of these features can be used or not used at the time of testing (Ahmed, et al., 2017). Thus, the GUI combination testing methodologies are used to resolve these problems using the consideration of combinations of the events (Memon, 2002). The CIT approach is capable of tackling the interactions in an effective manner, but in case of ordinary approaches, all the constraints cannot be satisfied and there arise a possibility of the presence of some invalid combinations in the final test suit being constructed (Ahmed, et al., 2017). In general, the combination testing methods, which are also known as combinatorial testing always depend on the popular mathematical theory termed as combinatorial design (Ahmed, et al., 2014). In the combinatorial design, the finite set of elements is arranged into patterns, such as words, arrays or subsets based on the rules specified (Stinson, 2004). The arrangement of combinations is represented in the form of Covering Array (CA) that denotes all combinations in a single array. Hence, the number of combinations is reduced completely, but are covered with the CA. This way of reduction is very effective for the detection of defect as there is no necessity to test all the combinations that are possible (Nie & Leung, 2011).

Complete Article List

Search this Journal:
Reset
Open Access Articles
Volume 11: 4 Issues (2020): Forthcoming, Available for Pre-Order
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 1 Issue (2015)
Volume 5: 3 Issues (2014)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing