ISSN: 2229-371X

All submissions of the EM system will be redirected to Online Manuscript Submission System. Authors are requested to submit articles directly to Online Manuscript Submission System of respective journal.

Test Data Generation Strategies Using Constraints Support

Saad Masood1*, Shahid Masood Butt2*, Azura Onnc3*
  1. Department of Computer and Software Engineering, Bahria University, Islamabad, Pakistan
  2. Faculty of Management, Hamdard University Islamabad Campus, Pakistan
  3. Department of Management and Human Resource, University Tenaga Nasional, Malaysia
Corresponding Author: saadmasoodbutt668@yahoo.com, shahid.masood@hamdard.edu.pk, azura@uniten.edu.my

Visit for more related articles at Journal of Global Research in Computer Sciences

Abstract

Water scarcers and the degradation of water supplies threaten the development activities and health of people in many parts of the world. This is particularly true in GCC countries that are experiencing rapid population and development growth but have limited water resources and poor water resources management. GCC (Gulf Councel Countrie ) is facing potential water shortages. The alarming increase in the scarcity of water in various parts of the world. Water is a main issue in many countries especially in those GCC, it has focused a global attention on the need for a stronger and more appropriate water resource management and availability solutions. Imperative for nations to come up with more focused and direct measures that would address and stem this resource scarcity. Water sustainability needs a balance between demand and availability. The main objective of this paper is the application of these concepts to Arabs countries. Water demand management is about achieving a reduction in the use of water resources, normally through increased efficiency of water application. The management of water resources was not explicitly included in the past from thirty-five years in all most of those countries normative system partly because water was believed to be a free good in mind, and was not accepted to have a price to pay to use it. This work contributed to a low efficiency of water use and waste of it, and water prices are often well below levels needed to cover the costs of the system. Moreover, this contributes to a worse quality of water, and, as quality of water decrease, the management of water resources becomes more challenging and the need to integrate water quality into an overall water resources management grows. The main goal of this paper is showing, how Geographical Information Systems (GIS ) can be used to support infrastructure planners and analyst on water demand of a local area in GCC, they are (Saudi Arabia ,Kuwait, Bahrain, Oman and UAE). The results indicated an increase of about 110%, 135%, 139% and 281% in water demand due to future development in, agriculture, forestry, amenity and domestic sectors respectively.

Keywords

particle swarm optimization, t-way testing, software testing

INTRODUCTION

A human action produces some errors or bugs in the software. This will lead to a lot of defects which cause failure occurs when executed. This problem will cause serious damage of system function, and especially for a critical system will involve high costs and loss of time. Therefore, software testing is important in any software development life cycle (SDLC) to make sure the quality of software and to prevent the failure of software [1]. Software execution faults are one of the greatest contributors to info safety system faintness, which make software testing a key measure of the security system. Although, the existing testing techniques like boundary value (BV), Equivalent Partition (EP) useful to generate test cases. Software testers often for defects that they anticipate, while unforeseen defects, especially those arising from the combination among components, are overlooked in this area one of the major essential inquiries is the generation of test cases [2]. To process the combinatorial testing technique (CTT) has been put forward to generate minimum effective test cases. Because of the minimum test cases will be generated, the combinatorial testing techniques can help increase the effectiveness of software testing and reduce the cost for many applications [3]. Software Developers which a large data often noticed an interesting, although it is not amazing phenomenon: When the application is used for jumps higher, Ingredients that have operated for several months lacking trouble, rapidly appeared previous were not discovered faults. For instance, the application may have been installed on a various OS-hardware database management system (DBMS) networking platform, or recently extra clienteles may have an account registered with a weird combination of values that have not happened before [4]. Many of these scarcely combinations lead to bugs or error which may have resorted to past experiences and the use of large-scale. It is well recognized that such failures such as interaction failures; due they are only risky when three or additional input values interact that reasons the program to access as an outcome of not satisfactory. Combinatorial testing can assistance find out mistakes similar this early time in the testing lifecycle. The vision original t-way (t refers to the degree of the interaction) the combinatorial testing is explain that not all parameters common to each failure and most of the failure are leads by interaction between comparatively small number of parameters or a single parameter value.

COMBINATION TESTING NOTATION

Combinatorial testing notations are not new on the testing [5]. Discussion on how to use statistically designed experiments orthogonal arrays. Interaction test suites it can be set to corresponding combinatorial objects, Codenamed covering array (CA). In order of Assistance in the debate, this section separates the useful symbols notations for expressing covering array (CA). Often, the covering array (CA) has four parameters; p, t, N, and v (i.e, CA (N, t, vp)). Here, the symbols P, v, and t are used to mention to the parameters (P), values (V), and interaction strength for the covering array (CA), respectively. For example, CA (9,2,34) Represents a test suite consisting of 4×9 arrays (i.e, the column represents the parameter (P), and the rows represent the size of test cases (N).
In this case, the test suite is cover 2-way interaction for a system with four 3-value parameters. Like to covering array (CA), mixed covering array (MCA) has three parameters; t, N, and Configuration (C) (i.e, MCA (N, t, C)). In addition to t and N that carries the same meaning as covering array (CA), mixed covering array (MCA), Dependents a new symbol, C. Consistent with earlier Submitted notations, where C appears the p and v of every configuration in the following: image representing that there are P1 parameters with v1 values, P2 parameters with v2 values, and so on. For example, MCA (1265, 4, 102, 41, 32, 2)7 Indicates the test size of 1265 that covers fourway interaction. Here, the configuration takes 12 parameters: one 4-value parameter, two 10-value parameters, seven 2-value parameters and two 3-value parameters [2].

PROBLEM DEFINATION MODEL

Bugs in software system can cost the loss of life and huge sum of money. Software testing plays an important role in exploring detects through possible test data to ensure its quality. Most of the software systems in this time are created using components. Often, the system errors or bugs are caused by unexpected combination between these [6]. For example, consider the testing of Microsoft words display tab in the options dialog (Figure 1).
17 possible options that can take it two possible values 217= 131.072 to be tested. There are which is practically inefficient!!! If a test case needs 5 minutes to be tested, it will take 15 months to test only the display tab completely.
Additionally, in real world scenarios, some of the possible value combinations may not be valid. Therefore, constraints have been introduced. They allow specifying invalid combinations which will be excluded or skipped during test case generation. Constraints can be found in many specifications of a software system. They are typically given in natural language and exist for several reasons, such as limitations of the components used in the target system, available resources and even marketing decisions. While constraints reduce the number of valid test cases, their presence makes combination testing more challenging [7]. The impact of constraints varies with the (test) problem, but their presence causes problems for many existing CTT tools of the numerous existing. These tools are supportive combinatorial test design only a few offers full constraints support. These rare apparatuses with full details published are scarcer.

RELATED WORK

Computational t-way strategies are approaches which heavily depend on search processes to find the best test cases from a generated interaction test element, which is generated according to pre-identified input parameters and values. Researchers have developed several t-way strategies to optimize the test suite. Such as AETG [8], GA [9], IPO [10,11], Jenny (Jenkins, 2003), TVG [12], PSTG [13], SA [6,14].
HSS [15], As far as the review of existing computational t- way strategies is our intention. This literature review is carried out an overview of 15 related strategies. This review has classified into two main classifications according to [10] taken into account the strategies related to constraints-based testing (Figure 1).
Natural-Based T-Way Strategies
Natural based T-way strategies are based on natural Algorithm, which are inspired from the nature of the creatures behaviors (i.e, forging, meeting… etc) [16]. Those strategies have shown interesting outcomes related to the optimum test suite generation. Moreover, it has overcome many limitations related to combinatorial optimization problem [17]. Usually, Natural based strategies uses natural algorithm as a backbone search engine. Many natural based strategies has been proposed using this approach as a basis of one-test-at-a-time approach, such as, HS [15], PSTG [13], SA [6,14], GA [9].GA strategy mimics the natural selection process Which has been addressed in a lot of different research [9,18,19] the algorithm for automatic test data generation. The generated data utilizes a genetic algorithm to scan for test cases that satisfy desired testing prerequisites. A solution (chromosome) is a group of test data (i.e. a list of input values). The algorithm assesses test case by implementing the program with the test case as input, and recording the predicates in the system that implementing with that test case. This list of predicates is compared with the group of predicates found on the control-dependence predicate paths for the node representing the current test demands. GA can be stated as a non-deterministic. Regarding T, it can only support T=3 and 3 it also doesn't allow using real values as input. It can support uniform input values.
Simulated Annealing (SA) [14,19] first performs SA to support pairwise interactions. Later developed and execution SA to support up to 3-way interactions. In the execution, a large random field of search is generated. Relying on the binary search process and a probability based transformation equation, the strategy repeats to pick the best test case every iteration with a specific end goal to construct the test suite. Thus, the results indicated that SA is more effective than other approaches for discovering optimal sizes in cases of little strengths. It can support uniform input values. Similar to other natural-based counterparts, SA addresses small values of interaction strength (i.e., t ≤ 3). Particle Swarm Test Generator (PSTG) [13,20]. It is the Natural-based t-way strategy for generating t-way test suite. PSTG is based on the particle swarm optimization (PSO) algorithm, which simulates the swarm behaviour of birds. Internally, PSTG iteratively performs local and global searches, inquiries to discover the candidate test cases solutions to be added to the final suite until all the interaction tuples are covered. PSTG Not like other Natural based strategies that address little values of t (i.e., 2 ≤ t ≤ 3), where it can support up to t = 6. As such, the interaction support provide by PSTG is still limited. PSTG does not cater for the constraints support.
HSS algorithm has developed by (Alsewari) to generate the test suite by adopting harmony search (HS) algorithm as its core implementation. HS is an algorithm mimicking the behaviour of musicians in the process of improvisation (Geem). HSS generates random test cases in Harmony Memory HM based on harmony memory size. Then improvise the test cases in HM for several times based on local and global improvement. In each iteration. HSS will add test case to final test suite until covered all pair interactions. Unlike other competing natural based t-way strategies, HSS addresses the support for high interaction (i.e, t > 6), and implements seamless support for constraints. Through published results, HSS gives competitive results against most existing t-way strategies.

CONCLUSION

This paper gives us a background about Combinatorial Testing CT, where reviews the existing Combinatorial test generation strategies shows the advantages and the limitations for each. This works serve as a background study for our further work, which we intend to design and implement a new CT strategy, which may help get rid of some of the limitations in this research area.

Figures at a glance

Figure
Figure 1

References