Automation of Data Flow Class Testing Using hybrid Evolutionary Algorithms

Author(s):  
Neetu Jain ◽  
Rabins Porwal

Background: Software testing is a time consuming and costly process. Recent advances in complexity of software have gained attention among researchers towards the automation of generation of test data. Objective: This paper focuses on the structural testing of object oriented paradigm based software and proposes a hybrid approach to automate the class testing applying heuristic algorithms. Method:The proposed algorithm performs data flow testing of classes applying all def-uses adequacy criteria by automatically generating test cases. A nested 2-step methodology is applied using meta-heuristic genetic algorithm and its two variant (GA-variant1 and Ga-variant2) to produce optimized method sequences. Results: An experiment is performed applying proposed algorithm on six test classes. The results suggest that proposed approach with GA-variant1 is better than other techniques in terms of Average d-u coverage and Average iterations.

2013 ◽  
Vol 756-759 ◽  
pp. 2433-2437
Author(s):  
Jing Chen

This paper analyzed the basic object-oriented concepts from the perspective of testing. The effects of the characteristics of object-oriented software on the software testing were discussed. The class testing method of object-oriented software was put forward. This method includes tests based on the state transition diagram and data flow testing on class. A integration testing of object-oriented software was put forward based on the event-driven characteristics of object-oriented software, and a data-generating method of software test based on genetic algorithm was provided. The test case generating technology of object-oriented software was discussed, which utilized an intercalation method of branch function and regarded the genetic algorithm as the core search algorithm.


Author(s):  
Varun Gupta

Hybrid regression testing approaches involve the combinations of test suite selections, prioritizations, and minimizations. The hybrid approaches must reduce size of test suite to minimal level and enhance fault detection rate. The chapter proposes a new hybrid regression testing approach that reduces the number of test cases by reducing the paths of source code on the basis of the dependency between the statements and the changes. The proposed technique is evaluated to be better than the existing hybrid approach in terms of percentage savings in test cases and fault detection rate.


2001 ◽  
Vol 148 (2) ◽  
pp. 56 ◽  
Author(s):  
B.-Y. Tsai ◽  
S. Stobart ◽  
N. Parrington

Author(s):  
Judith Kabeli ◽  
Peretz Shoval

FOOM (Functional and Object-Oriented Methodology) and OPM (Object-Processes Methodology) are methodologies used for analyzing and designing information systems. Both integrate functional and object-oriented approaches, but differ in that the analysis specification of FOOM utilizes OO-DFDs (Data Flow Diagrams with object classes that replace traditional data-stores) and a class diagram, while OPM defines a new notational model for specifying the system’s structural and procedural requirements, which combines processes and classes in a unified diagrammatic notation. In this study, we compare FOOM and OPM from the point of view of both user comprehension of analysis specifications and user preference of specifications. The comparison is based on a controlled experiment that measured: (a) comprehension of the analysis specifications, which includes both structural and behavioral aspects of the system; (b) the time it takes to complete the task of specification comprehension; and (c) the user’s preference of models. Our results show that FOOM performed better than OPM and that the users preferred FOOM to OPM.


2018 ◽  
Vol 5 (1) ◽  
pp. 112-118
Author(s):  
Agus Pamuji

Abstrak Uji coba perangkat lunak merupakan aktifitas yang sangat menentukan sebelum diterima oleh pengguna akhir. Pada siklus pengembangan perangkat lunak, aktiftas uji coba menghabiskan 50% biaya, usaha, dan waktu. Hal ini terutama pada teknik pengujian dengan menggunakan metode white-box yang memerlukan waktu yang lama. Dalam penelitian ini, diusulkan sebuah strategi untuk memperbaiki uji coba struktural menggunakan 4 tahap uji coba yaitu uji alur kontrol, uji alur data, uji coba berbasis slice, uji coba mutasi melalui penerapan parameter metrik uji. Adapun metrik uji antara lain perancangan jumlah kasus uji, jumlah kasus uji dieksekusi, jumlah kasus uji lolos, jumlah kasus uji gagal, waktu ekseskusi kasus uji, dan waktu yang digunakan selama proses pengembangan. Metode ini untuk mengurangi rawan kesalahan dan mempercepat proses uji coba. Hasil akhir menunjukan bahwa dengan strategi uji coba yang diterapkan dapat menurunkan tingkat dan rawan jumlah kesalahan walapun pada awalnya mengalami peningkatan pada tahap 1 dan 2. Kata Kunci: uji coba, metrik uji, strategi, struktural, white-box Abstract Software testing is a crucial activity that have the goal to determine before it are accepted by end-users. In the software development life cycle, testing activity has spent about 50% on cost, effort, and the time. This is especially on the testing techniques when the using white-box method that have takes a long time. In this study, a strategy was proposed to improve the structural testing through four phases, i.e, control flow testing, data flow testing, slice based testing, and the mutation through the implementation of testing metrics parameter. The testing metric include designing the number of test case, a number of test cases executed, a number of test cases passed, a number of test cases failed, a test case execution time, and the time spent during the development process. This method are reduced the error prone and to increas during testing process. As a result show that with the experimental strategy was applied could decrease the level and prone to the number of errors even though initially increased on the 1 and 2 phases. Keywords: testing, testing metrics, strategy, structural, white-box


10.28945/2435 ◽  
2002 ◽  
Author(s):  
Mohammed Al-Ghafees ◽  
James Whittaker

The idea of using white box data flow information to select test cases is well established and has proven an effective testing strategy. This paper extends the concept of data flow testing to the case in which the source code is unavailable and only black box information can be used to make test selection decisions. In such cases, data flow testing is performed by constructing a behavior model of the software under test to act as a surrogate for the program flow graph upon which white box data flow testing is based. The behavior model is a graph representation of externally-visible software state and input-induced state transitions. We first summarize the modeling technique and then define the new data flow selection rules and describe how they are used to generate test cases. Theoretical proof of concept is provided based on a characteristic we call transition variation. Finally, we present results from a laboratory experiments in which we compare the fault detection capability of black box data flow tests to other common techniques of test generation from graphs, including simple random sampling, operational profile sampling and state transition coverage.


2018 ◽  
Vol 5 (1) ◽  
pp. 112-118
Author(s):  
Agus Pamuji

Abstrak Uji coba perangkat lunak merupakan aktifitas yang sangat menentukan sebelum diterima oleh pengguna akhir. Pada siklus pengembangan perangkat lunak, aktiftas uji coba menghabiskan 50% biaya, usaha, dan waktu. Hal ini terutama pada teknik pengujian dengan menggunakan metode white-box yang memerlukan waktu yang lama. Dalam penelitian ini, diusulkan sebuah strategi untuk memperbaiki uji coba struktural menggunakan 4 tahap uji coba yaitu uji alur kontrol, uji alur data, uji coba berbasis slice, uji coba mutasi melalui penerapan parameter metrik uji. Adapun metrik uji antara lain perancangan jumlah kasus uji, jumlah kasus uji dieksekusi, jumlah kasus uji lolos, jumlah kasus uji gagal, waktu ekseskusi kasus uji, dan waktu yang digunakan selama proses pengembangan. Metode ini untuk mengurangi rawan kesalahan dan mempercepat proses uji coba. Hasil akhir menunjukan bahwa dengan strategi uji coba yang diterapkan dapat menurunkan tingkat dan rawan jumlah kesalahan walapun pada awalnya mengalami peningkatan pada tahap 1 dan 2. Kata Kunci: uji coba, metrik uji, strategi, struktural, white-box Abstract Software testing is a crucial activity that have the goal to determine before it are accepted by end-users. In the software development life cycle, testing activity has spent about 50% on cost, effort, and the time. This is especially on the testing techniques when the using white-box method that have takes a long time. In this study, a strategy was proposed to improve the structural testing through four phases, i.e, control flow testing, data flow testing, slice based testing, and the mutation through the implementation of testing metrics parameter. The testing metric include designing the number of test case, a number of test cases executed, a number of test cases passed, a number of test cases failed, a test case execution time, and the time spent during the development process. This method are reduced the error prone and to increas during testing process. As a result show that with the experimental strategy was applied could decrease the level and prone to the number of errors even though initially increased on the 1 and 2 phases. Keywords: testing, testing metrics, strategy, structural, white-box


Sign in / Sign up

Export Citation Format

Share Document