IJRIT International Journal of Research in Information Technology, Volume 1, Issue 5, May 2013, Pg. 220-227

International Journal of Research in Information Technology (IJRIT)

www.ijrit.com

ISSN 2001-5569

Minimization of Test Sequence Length for Structural Coverage Using VLR 1

1

G. Vivek, 2 R.C. Narayanan

ME-Software Engineering, Department of CSE, Sona College of Technology, Salem, TN, India 2 Associate Professor, Department of CSE, Sona College of Technology, Salem, TN, India 1

[email protected] , 2 [email protected]

Abstract In order to reduce the sequence length of the test case in testing process, researchers have proposed the use of test case reduction techniques which aim to reduce the size of test case with respect to some criteria. In earlier work, the internal states are problematic, because the coverage of some code structures can depend on the current status of the internal state and the Sequence of the length is high in the full coverage. So we analyze the role that length plays in software testing, in particular branch coverage. To obtain high coverage, a common practice to apply the first phase of random testing. In fact, many branches are easy, and using expensive technique to cover them which would not be cost effective and minimizing the Sequence length of the testing process.

Index terms: Software Testing, Test sequence, Search based software engineering, state problem.

1. Introduction Software testing remains the most important technique in practice to find errors in program and to gain confidence in software quality. In software testing the test sequences are followed for executing the test actions according to the design. Test sequences are nothing but a sequence or an order for the test case actions which we are giving for testing of software. More problems arise if the software has an internal state. An internal state can be for example, static variables inside functions in C programs. In Object oriented software most programs have internal states which are problematic because the coverage of some code structure can depend on the current status of the internal state. To put the internal state in correct configuration, a sequence of function calls is often required. The role that the length of this sequence place in testing software with internal state in particular, we concentrate on the branch coverage criteria because it is one of the most common criteria. In previous work they first analyzed only the phase for each difficult branch and G. Vivek, IJRIT

228

second they also analyzed the task of finding a single and minimal sequence to cover it. Here the searches are compared when different length are fixed against searches when the length is an objective true optimize for the sake of clarity, the reader should note that RS is conceptually different from random testing. The first is used to find this cases that cover the target branch. In previous work they reduced the test sequence lengths using the different search algorithms such as Random search, Hill climbing, Evolutionary algorithm and Genetic algorithm. They analyzed the performance changes when using the different lengths of the testing sequence was used. In the proposed system, we analyze of the length and bloat in the context of the testing object oriented software whereas bloat is nothing but a process which is a successive versions of a computer program become perceptively slower, uses memory or processing power. Evolutionary search with variable size representation is susceptible to bloat- that is, a disproportional growth of the length of individuals that quickly uses up all resources and so seriously harming the search. Unfortunately, this also means it applies to search-based testing for object-oriented software, although this has not been sufficiently treated in the literature so far. In this work, we performed a set of experiments, using a genetic algorithm, n the properties of test sequence length and how to counter the effects of length bloat interestingly, our reach showed that the choice of starting length for the search is secondary to the choice of bloat control techniques. Not only is there the danger of running into problems such as using up all memory and increasing execution times, our experiments showed that the success rate.

2. Motivation In this proposed work we have to find out the low complexity and better coverage. The main objective of this work is to concentrate on the test sequence length for the role of testing. Also the structure coverage is concentrated here for the covering of more number of branches in the testing and to analyze the tasks for finding the single and minimal test sequence. In previous work, because of the uncovering of the branches, the invisible branches are neglected so here we mainly propose a technique to solve those problems in the previous work. Here proposing a technique to overcome the defects in the already defined work by promoting an algorithm called as a steady state genetic algorithm. Also in steady state algorithm the crossover is changed into the relative position crossover and dynamic upper bound are used to change the fixed value in the upper bound. The integrating length in ranking function is used to integrate the sequence length and fitness value.

3. Related work Software testing can be re-formulated as a search problem; hence search algorithms (e.g., Genetic Algorithms) can be used to tackle it. Most of the research so far has been of empirical nature, in which novel proposed techniques have been validated on software testing benchmarks. However, only little attention has been spent to understand why met heuristics can be effective in software testing. This insight knowledge could be used to design novel more successful techniques [1].In this research we review runtime analysis and we explain how it can be applied to SBSE. We start the analysis on software testing because this is the most studied sub-field of SBSE. In particular, we focus on branch coverage in White Box Testing. Runtime can be studied on different types of predicates, relations among the input variables, different structures of the control flow graph, etc. The resulting theorems would hence be used as basic building blocks to calculate the runtime of the classes of software that can be built with these blocks. Runtime can be theoretically calculated on specific software that is commonly used in literature, like for example the Space program and Java containers. A better understanding of how search algorithms behave on these problems would help to make more precise and rigorous comparisons in empirical validations of novel techniques against common search algorithms. Runtime Analysis is an important part of this theoretical investigation, and brings the evaluation of search algorithms closer to how algorithms are classically evaluated [2]. Software Testing is used to find the presence of bugs in computer programs. If no bug is found, testing cannot guarantee that the software is bug-free. G. Vivek, IJRIT

229

However, testing can be used to increase our confidence in the software reliability .Unfortunately, testing is expensive, time consuming and tedious. It is estimated that testing requires around 50%of the total cost of software development. Runtime analysis is important part of this theoretical investigation, and brings the evaluation of search algorithms closer to how algorithms are classically evaluated. During the last decade, there has been much research on runtime analysis of randomized search algorithms. The field has now advanced to a point where the runtime of relatively complex search algorithms can be analyzed on classical combinatorial optimization problems [7].

4. Methodologies The different techniques are followed for the reducing the test sequence length in structural coverage earlier [3]

4.1 Random Search [RS] It is simplest search-based algorithm.Random solutions are sampled until a global optimum is found. The information given by the fitness function is only used to check whether a global optimum has been sampled. RS is commonly used in literature as a base-line for comparing other search algorithms. What distinguishes among RS algorithms is 4.2 Hill Climbing Algorithm [HC] HC starts from a search point, and then it looks at neighbour solutions. A neighbour solution is structurally lose, But the notion of distance among solutions is problem dependent. If at least one neighbour solution has better fitness value, HC “moves” to it and it recursively looks at the new neighbourhood. If no better neighbour is found, HC restarts from a new solution. HC algorithms differ on how the starting points are chosen, on how the neighbourhood is defined and on how the next solution is chosen among better ones in the neighbourhood. We choose the starting point’s at random. 4.3 (1+1) Evolutionary Algorithm [EA] The (1+1) EA is a single individual evolutionary algorithm. A single offspring is generated at each generation by mutating the parent. The offspring never replace their parents if they have worse fitness value. In a binary representation, a mutation consists of flipping bits with a particular probability. Typically, each bit is considered for mutation with probability1/k, with k the length of the bit-string. In our case, a test sequence is composed of l function calls. We consider the methods in the test sequences as bits (e.g., 0 to represent an insertion and 1 for a removal), and the method inputs as groups of bits that are mutated together with a special operator. 4.4 Genetic Algorithm [GA] GA is a global search meta heuristic inspired by the Darwinian Evolution theory. Different variants of this Meta heuristic exist. However, they rely on four basic features: population, selection, and crossover and mutation. More than one solution is considered at the same time (population). At each generation (i.e., at each step of the algorithm), some good solutions in the current population chosen by the selection mechanism generate offspring using the crossover operator. This operator combines parts of the chromosomes (i.e., the solution representation) of the offspring parents. These new offspring solutions will fill the population of the next generation [9].

G. Vivek, IJRIT

230

5. Proposed work

Fig. 1 Architecture of the Test Sequence Length Process

First, realistic software for which longer sequences give worse results needs to be identified and studied. Hybrid techniques that exploit variable length representation should hence be designed to work well on average. Second, additional formal analyses on the role of the length are required to get a better understanding of what the limitations and difficulties of software testing. In the proposed system, we analyze the effects of length and bloat in the context of testing object oriented software. The contributions of this work are as follows: Bloat: We propose and evaluate a set of different techniques to control bloat, identifying which combinations of techniques work best and should therefore be used in the future. Length: We analyze the effect of the test case length on the results and on bloat, showing that the length has only small influence on both, resulting test suites and bloat. Evolutionary search with variable size representation is susceptible to bloat—that is, a disproportional growth of the length of individuals that quickly uses up all resources and so seriously harming the search. Unfortunately, this also means it applies to search-based testing for objectoriented software, although this has not been sufficiently treated in the literature so far. In this work, we performed a set of experiments, using a genetic algorithm, on the properties of test sequence length and how to counter the effects of length bloat. Interestingly, our research showed that the choice of starting length for the search is secondary to the choice of bloat control techniques. Not only is there the danger of running into problems such as using up all memory and increasing execution times, our experiments showed that the success rate for the same amount of resources is higher when applying bloat control techniques.

G. Vivek, IJRIT

231

In the Variable Length Representation [VLR] genetic algorithm is used in the proposed system. In this process is to calculate the value of the crossover and it will be taken the ratio and check the variable length. In the run time process the length is very important in this algorithm. Crossover probability is a process to indicate a ratio of how many couples will be picked of mating. And the crossover probability length is calculating the variable ratio. And we will check the how many test case covered and length is calculated. Primitive statements represent numeric variables, e.g., int var0 = 54. Constructor statements generate new instances of any given class; e.g., XMLElement var1 = new XMLElement(). Field statements access public member variables of objects, e.g. Int var2 = var1.line_nr. Method statements invoke methods on objects or call static methods, e.g., int var3 = var1.countChildren(). A test case is a sequence of such statements, and the length of a test case is the number of statements

Fixed maximum length process is a very common approach to contrast bloat is to put an upper limit L to the length of the test cases, e.g., L = 100function calls. This constraint can be enforced in several ways: First, by having search operators that do not sample offspring that are longer than L (Line 10 in Algorithm 2). For example, an insertion mutation could be avoided if the length already equals L. Second, offspring that are longer than L (e.g., when we use TPX) can be rejected, and the parents will be copied to the next generation instead of the offspring. Finally, the limit can be given implicitly by specifying a maximum amount of resources to be spent per individual. For example, one can define a timeout for the execution of test cases.Because of the reducing the test sequence length in the phase of software testing the knowledge base of the testing gets minimized which gives the perfect structural coverage in the software testing.

6. Experimental result In the RS, Hill Climbing, Evolutionary algorithm data gathered through the randomly and shown the result for the structural coverage. In the above process the values will be randomly shown in the table are:

Data 197-76-72 150-123-92 183-208-158 244-187-171 223-201-47 232-178-1 199-188-246 250-148-36 193-175-79 191-186-167

Branch 5 5 5 4 4 4 4 4 4 4

Fitness 11.000000000000000 11.000000000000000 11.000000000000000 10.000000000000000 10.000000000000000 10.000000000000000 10.000000000000000 10.000000000000000 10.000000000000000 10.000000000000000

Table.1 Values of RS, HC, Evolutionary.

In the Genetic Algorithm are thedifferent variants of this meta heuristic exist. However, they rely on four basic features: population, selection, and crossover and mutation. More than one solution is considered at the same time (population). The input values assigned to the population size, crossover rate and fitness value and also assign the values of number of generation. G. Vivek, IJRIT

232

Data

Branch

93-227-248

8

Fitness

140-30-244

7

13.000000000000000

138-64-136

7

13.000000000000000

205-214-57

7

13.000000000000000

221-241-38

7

13.000000000000000

76-28-224

7

13.000000000000000

201-151-205

7

13.000000000000000

123-114-238

7

13.000000000000000

113-98-94

7

13.000000000000000

221-181-114

6

12.000000000000000

14.000000000000000

Table.2 Values of Genetic Algorithm In the Variable Length Representation Genetic Algorithm is used to in the proposed system. In this process is to calculate the value of the crossover and it will be taken the ratio and check the variable length. In the run time process the length is very important in this algorithm. Crossover probability is a process to indicate a ratio of how many couples will be picked of mating. And the crossover probability length is calculating the variable ratio.

Data 42-211-79

Branch 9

Fitness 15.000000000000000

4-141-105

9

15.000000000000000

60-61-110

9

15.000000000000000

15-32-84

9

15.000000000000000

149-158-239

9

15.000000000000000

139-42-39

8

14.000000000000000

247-54-73

8

14.000000000000000

94-58-14

8

14.000000000000000

255-109-202

8

14.000000000000000

164-98-74

8

14.000000000000000

Table3.Test case process in variable length

G. Vivek, IJRIT

233

In the performance evaluation the horizontal position is branch covered performance and fitness evaluation performance vertical position is count in values. The difference of five algorithms is branch coverage and fitness values.

16

Count in values

14 12 10 8

Branch

6

Fitness

4 2 0 RS HC EA GA VLR Fig 2: Performance evaluation

7. Conclusion The work is concluded minimizing the test sequence length in the test case for structural coverage and finally the performance is done. The performance evaluation is done by comparing the existing work and the work which is done in this paper with the technique of reducing the test sequence length. Because of the reducing the test sequence length in the phase of software testing the knowledge base of the testing gets minimized which gives the perfect structural coverage in the software testing.

8. References 1. A. Arcuri, “Insight Knowledge in Search Based Software Testing,” Proc. Genetic and Evolutionary Computation Conf., pp.1649-1656, 2009. 2. A. Arcuri, P. Lehre, and X. Yao, “Theoretical Runtime Analysis in Search Based Software Engineering,” Technical Report CSR-09-04, Univ. of Birmingham, 2009. 3. M. Harman and P. McMinn, “A Theoretical & Empirical Analysis of Evolutionary Testing and Hill Climbing for Structural Test Data Generation,” Proc. ACM Int’l Symp. Software Testing and Analysis, pp. 73-83, 2007. 4. G. Fraser and A. Gargantini, “Experiments on the Test Case Length in Specification Based Test Case Generation,” Proc. Int’l Workshop Automation in Software Test, 2009. 5. A. Arcuri, P.K. Lehre, and X. Yao, “Theoretical Runtime Analyses of Search Algorithms on the Test Data Generation for the Triangle Classification Problem,” Proc. Int’l Workshop Search-Based Software Testing, pp. 161169, 2008.

G. Vivek, IJRIT

234

6. A. Arcuri and X. Yao, “Search Based Software Testing of Object- Oriented Containers,” Information Sciences, vol. 178, no. 15, pp. 3075-3095, 2008. 7. M. Harman, Y. Hassoun, K. Lakhotia, P. McMinn, and J. Wegener, “The Impact of Input Domain Reduction on Search-Based Test Data Generation,” Proc. European Software Eng. Conf. and the ACM SIGSOFT Symp. Foundations of Software Eng., pp. 155-164, 2007. 8. M. Harman, S.A. Mansouri, and Y. Zhang, “Search Based Software Engineering: A Comprehensive Analysis and Review of Trends Techniques and Applications,” Technical Report TR-09- 03, King’s College, 2009. 9. M. Harman, Y. Hassoun, K. Lakhotia, P. McMinn, and J. Wegener, “The Impact of Input Domain Reduction on Search-Based Test Data Generation,” Proc. European Software Eng. Conf. and the ACM SIGSOFT Symp. Foundations of Software Eng., pp. 155-164, 2007. 10. J.C.B. Ribeiro, M.A. Zenha-Rela, and F.F. de Vega, “Enabling Object Reuse on Genetic Programming-Based Approaches to Object-Oriented Evolutionary Testing,” Proc. European Conf. Genetic Programming, pp. 220-231, 2010. 11. J.C.B. Ribeiro, M.A. Zenha-Rela, and F.F. de Vega, “Enabling Object Reuse on Genetic Programming-Based Approaches to Object-Oriented Evolutionary Testing,” Proc. European Conf. Genetic Programming, pp. 220-231, 2010. 12. W. Visser, C.S. Pasareanu, and R. Pela`nek, “Test Input Generation for Java Containers Using State Matching,” Proc. ACM Int’l Symp. Software Testing and Analysis, pp. 37-48, 2006.

G. Vivek, IJRIT

235

Minimization of Test Sequence Length for Structural Coverage ... - IJRIT

So we analyze the role that length plays in software testing, in particular branch ... Index terms: Software Testing, Test sequence, Search based software ...

286KB Sizes 3 Downloads 244 Views

Recommend Documents

Minimization of Test Sequence Length for Structural Coverage ... - IJRIT
So we analyze the role that length plays in software testing, in particular branch ... Index terms: Software Testing, Test sequence, Search based software ...

Minimization of Test Sequence Length for Structural ...
1 ME-Software Engineering, Department of CSE, Sona College of Technology, Salem, TN, India. 2 Associate Professor, Department of CSE, Sona College of ...

Number of cds / transcripts of different sequence length -
maximum transcript sequence length and the maximum number of. CDSs for any transcript. 2. Initializes the histogram. 3. Fills the Histogram (counts how many transcripts in each category). 4. Displays the results in a two-dimensionnal table. OPTIONS U

Insights into the sequence of structural consequences of convulsive ...
Insights into the sequence of structural consequences of convulsive ... Health Sciences Centre, Edmonton, Alberta T6G 2B7, Canada. E-mail: ... Data processing. Hippocampal volume: The hippocampi were manu- ally outlined by a trained rater (i.e., F Sh

Insights into the sequence of structural consequences ...
Health Sciences Centre, Edmonton, Alberta T6G 2B7, Canada. ... Axial FLAIR images in the acute stage (i.e., between 12 and 24 h) of post–status epilepticus.

Approximate Test Risk Bound Minimization ... - Semantic Scholar
GALE program of the Defense Advanced Research Projects Agency, Contract. No. ...... recognition,” Data Mining and Knowledge Discovery, vol. 2, no. 2, pp.

Structural Risk Minimization over Data-Dependent ...
Nov 28, 1997 - [email protected]. Peter L. Bartlett. Department of Systems Engineering. Australian National University. Canberra 0200 Australia. Peter.

Deploying Wireless Sensor to achieve Target Coverage Problem - IJRIT
IJRIT International Journal of Research in Information Technology, Volume 3, Issue 4, April 2015 ... of Information Technology, Sri Ramakrishna Engineering College .... The solution with least sensing range is finally chosen as the best solution.

Deploying Wireless Sensor to achieve Target Coverage Problem - IJRIT
2 UG Scholar, Department of Information Technology, Sri Ramakrishna ... The target coverage requires higher degree of coverage(k-coverage) to track ... In the past years, the sensor deployment is mainly focused on area coverage problem.

Approximate Test Risk Bound Minimization through Soft Margin ...
soft margin estimation (SME), is proposed for estimating the parameters of ..... very rough but helpful for classifier design, according to the analysis in Section II.B.

A Conditional Likelihood Ratio Test for Structural Models
4 (July, 2003), 1027–1048. A CONDITIONAL LIKELIHOOD RATIO TEST. FOR STRUCTURAL MODELS. By Marcelo J. Moreira1. This paper develops a general method for constructing exactly similar tests based on the conditional distribution of nonpivotal statistic

order matters: sequence to sequence for sets - Research at Google
We also show the importance of ordering in a variety of tasks in which seq2seq has ..... In Advances in Neural Information Processing Systems, 2010. 10 ...

Coarsest Controllability-Preserving Minimization for ...
(under)specifications for a greater modeling convenience [5]. Note that ...... failed pairs in total, leading to the complexity of O(S3) for updating the little brother ...

Consistency of trace norm minimization
and a non i.i.d assumption which is natural in the context of collaborative filtering. As for the Lasso and the group Lasso, the nec- essary condition implies that ...

Precise asymptotics of the length spectrum for finite ...
Riemann surface of finite geometry and infinite volume. The error term involves the ... a surface can be obtained as a quotient M = Γ\H2 of the hyperbolic space by a Fuchsian group. Γ which is torsion free, .... infinite volume case, the Laplace-Be

sequence of events.pdf
Whoops! There was a problem loading more pages. Retrying... Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. sequence of events.pdf. sequence of even

Consistency of trace norm minimization
learning, norms such as the ℓ1-norm may induce ... When learning on rectangular matrices, the rank ... Technical Report HAL-00179522, HAL, 2007b. S. Boyd ...

In terms of the length of the FPN, the correct length ...
information and personal characteristics such as your ethnic group, any special educational needs and relevant medical information. We will not give information ...

Multi-task Sequence to Sequence Learning
Mar 1, 2016 - Lastly, as the name describes, this category is the most general one, consisting of multiple encoders and multiple ..... spoken language domain.

Paper for IJRIT
Keywords-Bus-bar differential protection, current transformer (CT) saturation detection, second derivative, zero crossing. 1. Introduction. The continuous expansions of power system, has imposed a requirement of fast and accurate fault clearance sche

S2VT: Sequence to Sequence
2University of California, Berkeley. 3University of Massachusetts, Lowell 4International Computer Science Institute, Berkeley. Abstract .... The top LSTM layer in our architecture is used to model the visual frame sequence, and the ... the UCF101 vid

Boosting Clusters of Samples for Sequence Matching in ...
Abstract—This study introduces a novel classification algo- rithm for learning and matching sequences in view independent object tracking. The proposed learning method uses adaptive boosting and classification trees on a wide collection (shape, pos

2017-2018 Sequence of Units for Implementing UoS without TCRWP.pdf
This may be caused by a lack of self- awareness of internal auditors and the internal auditors are in a position of dilemma. Keywords : professionalism, internal auditor, whistleblowing intention. PENDAHULUAN. Maraknya kasus pelanggaran akuntansi yan

Fair Simulation Minimization - Springer Link
Any savings obtained on the automaton are therefore amplified by the size of the ... tions [10] that account for the acceptance conditions of the automata. ...... open issue of extending our approach to generalized Büchi automata, that is, to.