16-07-2014, 10:05 AM
AUTOMATED TEST DATA GENERATION USING FUZZY LOGIC -GENETIC
ALGORITHM HYBRIDIZATION SYSTEM FOR CLASS TESTING OF OBJECT ORIENTED PROGRAMMING.
AUTOMATED TEST.docx (Size: 653.05 KB / Downloads: 11)
. ABSTRACT
In this paper we have explained automatic test data generation particularly for class testing of object oriented programming. During test data generation we have implemented the Genetic program - Fuzzy logic control auxiliary hybridization techniques. Some cases genetic algorithm has been used for optimized the desired results. As a future challenges we have made comments on the utilization of this new proposed technique. This proposed technique can be used for testing of industrial production oriented software. Production oriented software is use in Computer numerical control (C.N.C) machine.
INTRODUCTION
Main objective of software industry is to customer satisfaction. Object oriented programming uses widely in every sector. Bug free software need to be produced with minimum testing cost and in minimum time. Automatic testing is necessary for adapting fast development of software industry as well as cut down cost and time. Testing including execution of a program by some sets of test data and compare the results with expected outcomes is called software testing. Generating of automated test data is very difficult task in object oriented program because inheritance, method overriding, polymorphism, templates shows many binding anomalies due to dynamic behavior of objects. Class is the basic building block of object oriented programming. Traditional testing like structural testing, functional specification- based testing and heuristics testing are used for it. Structural testing is important because it’s located the bugs in codes by control flow testing, path coverage testing, data flow testing. Functional testing meets the requirements and specification of software. Heuristics testing technique test the abstract classes. Automatic test data is generated in object oriented programming from traditionally code-based technique and model-based or design based technique. In code- based technique, test data is generated after analyzed the change impact between source code and instrumented code. In model-based technique test data is generated after analysis of two different versions of models. Model is drawn during system requirement analysis phase. Hitesh et al [12] has explained automated test data generation technique for soft ware testing in their paper. Some researchers explained automated test data generation based on UML designing. But nowadays researcher has concentrated on search based [2] technique for automated test data generation of OOP. They have utilized evolutionary algorithm like genetic algorithm (GA), genetic programming (GP). Some researchers made comments on the using of GA with Fuzzy logic as well as neural networks [10] for various type of software testing.
In this paper automated test data is generated on the new model based approach. Advantage of this approach is that [3] test data can be available earlier during software requirement analysis phases. Dynamic behavior [1] of objects has been utilized throughout the model. Information is extracted from .UML file by java parser. Tree structure of objects is formed by the extracted information. The tree is then converted to optimized tree structures by Genetic Programming in association with Fuzzy logic control. The optimized tree is then converted to binary trees. Test data generation, Validity checking, Termination, all are done from binary trees by using depth first search algorithm [1, 3].
. SURVEY OF RELATED WORKS
M.Prasanna1 et al [1] have proposed automatic test case generation for UML object diagrams using genetic algorithm in genetic crossover tree structures. As a case study they have used Banking System. Test case is generated from binary tree. Depth first search algorithm is used for test data generation ones ,validity checking, and termination .It is a very lengthy and time consuming process. Several steps are necessary for selection of fittest crossover tree until optimized value is reached. Optimization in different levels of genetic crossover tree using genetic algorithm is a cumbersome and more stepping process. A.V.K.Shanthi et al [3] has proposed to used GA for optimization of crossover tree structures. GA implemented as data mining concept for optimization of test cases. They have also explained the advantages of model based automatic test data generation for object oriented programming (OOP). As a model they have used UML class diagram, optimized tree structure of objects, binary tree. Finally test data is generated and checked the validity by depth first search algorithm. Any single soft computing technique having less potential than hybridized soft computing. Their proposed testing technique can be fine tuned with my proposed hybridized technique. Resource of testing is limited on there. Andrea Arcuri et al [2] has explained why automatic testing of OOP is more difficult than procedural language. These difficulties had put the challenges before natural computation and software engineering communities. As a search problem model of the task is promising one for automatic testing of OOP. Writing of algorithm is a very complicated task for cross over tree of Genetic programming and fuzzy logic control hybridization.GA is also used in some places for optimized the desired results. Gursaran et al [7] has given outlined the Genetic algorithm structure. They proposed Hybridization of soft computing with traditional technique may give better performance for automatic testing. They do not implement the hybrid system for generating automated test data for OOP. Yun Y. et al [6] has explained various hybridized technique based on genetic algorithm and fuzzy logic control. They have initialized the population of GA .Then their proposed hybridization technique is used for jumping large search space of GA. Fuzzy logic control is used for dynamically regulate the fine tuning of Crossover ratio and mutation ratio. But they do not implement their hybridized technique for automatic test data generation for OOP. Gursaran et al [7] has explained automatic test data generation using UML class diagram and GA for cluster testing of OOP.As a case study soda vending machine is taking consideration. Masoud Ahmadzade et al [11] has explained three aspects testing of adequacy criteria for OOP based on UML diagram. Fuzzy analytical hierarchy process (Fuzzy AHP) has approached for that.
VI. OUR PROPOSED METHOD
1. Source code is converted to the model of association, aggregation, generalization, among classes and inherited classes. These are structural modeling or static modeling of the system and does not change with time. This UML diagram drawn by Rational Rose software. The file is saved with the extension .UML.
2. Java parser analysis the .UML file and evaluate its expression.java swing program is used. It collects the information from .UML file and produced object tree.
3 .Genetic programming in association with fuzzy logic control is used for fittest crossover tree formation. Fuzzy logic control generates imprecise data. Genetic algorithm converts that imprecise value to optimized value in some cases. In other cases distance based approach [4] and compound fuzzy prediction rules has been utilized for desired results.
4. The new tree is converted to binary tree. Optimised test data [1, 3] is generated from binary tree by depth first search algorithm. Checking of validity, termination of test data generation is done by this algorithm.
5. Mutation testing is used for testing of efficiency of test data.
Graphical representation of our proposed method is given below.
CONCLUTION:
Automated test data generation minimizes manpower, cost, and time. FLC-GA auxiliary hybridization technique has removed the drawback of genetic crossover tree programming during automated test data generation. Jumping of Several steps of Genetic crossover tree operators has been done by this new proposed technique. Without class testing, others objects and method testing of object oriented programming is value less. Model based approach is suggested here. UML is a very popular and widely industrial accepted software is used for designing class diagram. Test cases to be available early during development of software lifecycle from models. So, we can made from it the effective test design as well as we can check the software coding . Tree structures of objects are made from collecting information of java parser. Tree structure having balancing property .Sorting and searching of nodes in tree structures is made easy in computer memory. Our approach is to use Genetic programming tree coupled with fuzzy logic control [4] for optimized test data generation. Valid test data and termination is done by binary tree, applying with depth first search algorithm.