To generate a test set for a given circuit (including both combinational and sequential circuits), choice of an algorithm within a number of existing test generation algorithms to apply is bound to vary from circuit t...To generate a test set for a given circuit (including both combinational and sequential circuits), choice of an algorithm within a number of existing test generation algorithms to apply is bound to vary from circuit to circuit. In this paper, the genetic algorithms are used to construct the models of existing test generation algorithms in making such choice more easily. Therefore, we may forecast the testability parameters of a circuit before using the real test generation algorithm. The results also can be used to evaluate the efficiency of the existing test generation algorithms. Experimental results are given to convince the readers of the truth and the usefulness of this approach.展开更多
This paper deals with the target-fault-oriented test generation of sequential circuits using genetic algorithms. We adopted the concept of multiple phases and proposed four sub-procedures which consist of activation, ...This paper deals with the target-fault-oriented test generation of sequential circuits using genetic algorithms. We adopted the concept of multiple phases and proposed four sub-procedures which consist of activation, propagation and justification phases. The paper focuses on the design of genetic operators and construction of fitness functions which are based on the structure information of circuits. Using ISCAS89 benchmarks, the experiment results of GA were given.展开更多
The automatic generation of test data is a key step in realizing automated testing.Most automated testing tools for unit testing only provide test case execution drivers and cannot generate test data that meets covera...The automatic generation of test data is a key step in realizing automated testing.Most automated testing tools for unit testing only provide test case execution drivers and cannot generate test data that meets coverage requirements.This paper presents an improved Whale Genetic Algorithm for generating test data re-quired for unit testing MC/DC coverage.The proposed algorithm introduces an elite retention strategy to avoid the genetic algorithm from falling into iterative degradation.At the same time,the mutation threshold of the whale algorithm is introduced to balance the global exploration and local search capabilities of the genetic al-gorithm.The threshold is dynamically adjusted according to the diversity and evolution stage of current popu-lation,which positively guides the evolution of the population.Finally,an improved crossover strategy is pro-posed to accelerate the convergence of the algorithm.The improved whale genetic algorithm is compared with genetic algorithm,whale algorithm and particle swarm algorithm on two benchmark programs.The results show that the proposed algorithm is faster for test data generation than comparison methods and can provide better coverage with fewer evaluations,and has great advantages in generating test data.展开更多
Many search-based algorithms have been successfully applied in sev-eral software engineering activities.Genetic algorithms(GAs)are the most used in the scientific domains by scholars to solve software testing problems....Many search-based algorithms have been successfully applied in sev-eral software engineering activities.Genetic algorithms(GAs)are the most used in the scientific domains by scholars to solve software testing problems.They imi-tate the theory of natural selection and evolution.The harmony search algorithm(HSA)is one of the most recent search algorithms in the last years.It imitates the behavior of a musician tofind the best harmony.Scholars have estimated the simi-larities and the differences between genetic algorithms and the harmony search algorithm in diverse research domains.The test data generation process represents a critical task in software validation.Unfortunately,there is no work comparing the performance of genetic algorithms and the harmony search algorithm in the test data generation process.This paper studies the similarities and the differences between genetic algorithms and the harmony search algorithm based on the ability and speed offinding the required test data.The current research performs an empirical comparison of the HSA and the GAs,and then the significance of the results is estimated using the t-Test.The study investigates the efficiency of the harmony search algorithm and the genetic algorithms according to(1)the time performance,(2)the significance of the generated test data,and(3)the adequacy of the generated test data to satisfy a given testing criterion.The results showed that the harmony search algorithm is significantly faster than the genetic algo-rithms because the t-Test showed that the p-value of the time values is 0.026<α(αis the significance level=0.05 at 95%confidence level).In contrast,there is no significant difference between the two algorithms in generating the adequate test data because the t-Test showed that the p-value of thefitness values is 0.25>α.展开更多
Software testing has been attracting a lot of attention for effective software development.In model driven approach,Unified Modelling Language(UML)is a conceptual modelling approach for obligations and other features ...Software testing has been attracting a lot of attention for effective software development.In model driven approach,Unified Modelling Language(UML)is a conceptual modelling approach for obligations and other features of the system in a model-driven methodology.Specialized tools interpret these models into other software artifacts such as code,test data and documentation.The generation of test cases permits the appropriate test data to be determined that have the aptitude to ascertain the requirements.This paper focuses on optimizing the test data obtained from UML activity and state chart diagrams by using Basic Genetic Algorithm(BGA).For generating the test cases,both diagrams were converted into their corresponding intermediate graphical forms namely,Activity Diagram Graph(ADG)and State Chart Diagram Graph(SCDG).Then both graphs will be combined to form a single graph called,Activity State Chart Diagram Graph(ASCDG).Both graphs were then joined to create a single graph known as the Activity State Chart Diagram Graph(ASCDG).Next,the ASCDG will be optimized using BGA to generate the test data.A case study involving a withdrawal from the automated teller machine(ATM)of a bank was employed to demonstrate the approach.The approach successfully identified defects in various ATM functions such as messaging and operation.展开更多
A novel interoperability test sequences optimization scheme is proposed in which the genetic algorithm (GA) is used to obtain the minimal-length interoperability test sequences. During our work, the basic interopera...A novel interoperability test sequences optimization scheme is proposed in which the genetic algorithm (GA) is used to obtain the minimal-length interoperability test sequences. During our work, the basic interoperability test sequences are generated based on the minimal-complete-coverage criterion, which removes the redundancy from conformance test sequences. Then interoperability sequences minimization problem can be considered as an instance of the set covering problem, and the GA is applied to remove redundancy in interoperability transitions. The results show that compared to conventional algorithm, the proposed algorithm is more practical to avoid the state space explosion problem, for it can reduce the length of the test sequences and maintain the same transition coverage.展开更多
A new approach to select anoptimal set of test points is proposed. The described method uses fault-wise table and multi-objective genetic algorithm to find the optimal set of test points. First, the fault-wise table i...A new approach to select anoptimal set of test points is proposed. The described method uses fault-wise table and multi-objective genetic algorithm to find the optimal set of test points. First, the fault-wise table is constructed whose entries are measurements associated with faults and test points. The selection of optimal test points is transformed to the selection of the columns that isolate the rows of the table. Then, four objectives are described according to practical test requirements. The multi-objective genetic algorithm is explained. Finally, the presented approach is illustrated by a practical example. The results indicate that the proposed method can efficiently and accurately find the optimal set of test points and is practical for large scale systems.展开更多
Pairwise testing is an effective test generation technique that requires all pairs of parameter values to be by at least one test case. It has been proven that generating minimum test suite is an NP-complete problem c...Pairwise testing is an effective test generation technique that requires all pairs of parameter values to be by at least one test case. It has been proven that generating minimum test suite is an NP-complete problem covered Genetic algorithms have been used for pairwise test suite generation by researchers. However, it is always a time-consuming process, which leads to significant limitations and obstacles for practical use of genetic algorithms towards large-scale test problems. Parallelism will be an effective way to not only enhance the computation performance but also improve the quality of the solutions. In this paper, we use Spark, a fast and general parallel computing platform, to parallelize the genetic algorithm to tackle the problem. We propose a two-phase parallelization algorithm including fitness evaluation parallelization and genetic operation parallelization. Experimental results show that our algorithm outperforms the sequential genetic algorithm and competes with other approaches in both test suite size and computational performance. As a result, our algorithm is a promising improvement of the genetic algorithm for pairwise test suite generation.展开更多
In this era of VLSI circuits, testability is truly a very crucial issue.To generate a test set for a given circuit, choice of an algorithm from a number ofexisting test generation algorithms to apply is bound to vary ...In this era of VLSI circuits, testability is truly a very crucial issue.To generate a test set for a given circuit, choice of an algorithm from a number ofexisting test generation algorithms to apply is bound to vary from circuit to circuit.In this paper, the Genetic Algorithm is used in order to construct an accurate modelfor some existing test generation algorithms that are being used everywhere in theworld. Some objective quantitative measures are used as an effective tool in makingsuch choice. Such measures are so important to the analysis of algorithms that theybecome one of the subjects of this work.展开更多
Test selection is to select the test set with the least total cost or the least total number from the alternative test set on the premise of meeting the required testability indicators.The existing models and methods ...Test selection is to select the test set with the least total cost or the least total number from the alternative test set on the premise of meeting the required testability indicators.The existing models and methods are not suitable for system level test selection.The first problem is the lack of detailed data of the units’fault set and the test set,which makes it impossible to establish a traditional dependency matrix for the system level.The second problem is that the system level fault detection rate and the fault isolation rate(referred to as"two rates")are not enough to describe the fault diagnostic ability of the system level tests.An innovative dependency matrix(called combinatorial dependency matrix)composed of three submatrices is presented.The first problem is solved by simplifying the submatrix between the units’fault and the test,and the second problem is solved by establishing the system level fault detection rate,the fault isolation rate and the integrated fault detection rate(referred to as"three rates")based on the new matrix.The mathematical model of the system level test selection problem is constructed,and the binary genetic algorithm is applied to solve the problem,which achieves the goal of system level test selection.展开更多
Software testing is one of the most crucial and analytical aspect to assure that developed software meets pre- scribed quality standards. Software development process in- vests at least 50% of the total cost in softwa...Software testing is one of the most crucial and analytical aspect to assure that developed software meets pre- scribed quality standards. Software development process in- vests at least 50% of the total cost in software testing process. Optimum and efficacious test data design of software is an important and challenging activity due to the nonlinear struc- ture of software. Moreover, test case type and scope deter- mines the quality of test data. To address this issue, software testing tools should employ intelligence based soft comput- ing techniques like particle swarm optimization (PSO) and genetic algorithm (GA) to generate smart and efficient test data automatically. This paper presents a hybrid PSO and GA based heuristic for automatic generation of test suites. In this paper, we described the design and implementation of the proposed strategy and evaluated our model by performing ex- periments with ten container classes from the Java standard library. We analyzed our algorithm statistically with test ad- equacy criterion as branch coverage. The performance ade- quacy criterion is taken as percentage coverage per unit time and percentage of faults detected by the generated test data. We have compared our work with the heuristic based upon GA, PSO, existing hybrid strategies based on GA and PSO and memetic algorithm. The results showed that the test case generation is efficient in our work.展开更多
基金This work was supported by National Natural Science Foundation of China (NSFC) under the grant !No. 69873030
文摘To generate a test set for a given circuit (including both combinational and sequential circuits), choice of an algorithm within a number of existing test generation algorithms to apply is bound to vary from circuit to circuit. In this paper, the genetic algorithms are used to construct the models of existing test generation algorithms in making such choice more easily. Therefore, we may forecast the testability parameters of a circuit before using the real test generation algorithm. The results also can be used to evaluate the efficiency of the existing test generation algorithms. Experimental results are given to convince the readers of the truth and the usefulness of this approach.
文摘This paper deals with the target-fault-oriented test generation of sequential circuits using genetic algorithms. We adopted the concept of multiple phases and proposed four sub-procedures which consist of activation, propagation and justification phases. The paper focuses on the design of genetic operators and construction of fitness functions which are based on the structure information of circuits. Using ISCAS89 benchmarks, the experiment results of GA were given.
文摘The automatic generation of test data is a key step in realizing automated testing.Most automated testing tools for unit testing only provide test case execution drivers and cannot generate test data that meets coverage requirements.This paper presents an improved Whale Genetic Algorithm for generating test data re-quired for unit testing MC/DC coverage.The proposed algorithm introduces an elite retention strategy to avoid the genetic algorithm from falling into iterative degradation.At the same time,the mutation threshold of the whale algorithm is introduced to balance the global exploration and local search capabilities of the genetic al-gorithm.The threshold is dynamically adjusted according to the diversity and evolution stage of current popu-lation,which positively guides the evolution of the population.Finally,an improved crossover strategy is pro-posed to accelerate the convergence of the algorithm.The improved whale genetic algorithm is compared with genetic algorithm,whale algorithm and particle swarm algorithm on two benchmark programs.The results show that the proposed algorithm is faster for test data generation than comparison methods and can provide better coverage with fewer evaluations,and has great advantages in generating test data.
文摘Many search-based algorithms have been successfully applied in sev-eral software engineering activities.Genetic algorithms(GAs)are the most used in the scientific domains by scholars to solve software testing problems.They imi-tate the theory of natural selection and evolution.The harmony search algorithm(HSA)is one of the most recent search algorithms in the last years.It imitates the behavior of a musician tofind the best harmony.Scholars have estimated the simi-larities and the differences between genetic algorithms and the harmony search algorithm in diverse research domains.The test data generation process represents a critical task in software validation.Unfortunately,there is no work comparing the performance of genetic algorithms and the harmony search algorithm in the test data generation process.This paper studies the similarities and the differences between genetic algorithms and the harmony search algorithm based on the ability and speed offinding the required test data.The current research performs an empirical comparison of the HSA and the GAs,and then the significance of the results is estimated using the t-Test.The study investigates the efficiency of the harmony search algorithm and the genetic algorithms according to(1)the time performance,(2)the significance of the generated test data,and(3)the adequacy of the generated test data to satisfy a given testing criterion.The results showed that the harmony search algorithm is significantly faster than the genetic algo-rithms because the t-Test showed that the p-value of the time values is 0.026<α(αis the significance level=0.05 at 95%confidence level).In contrast,there is no significant difference between the two algorithms in generating the adequate test data because the t-Test showed that the p-value of thefitness values is 0.25>α.
基金support from the Deanship of Scientific Research,University of Hail,Saudi Arabia through the project Ref.(RG-191315).
文摘Software testing has been attracting a lot of attention for effective software development.In model driven approach,Unified Modelling Language(UML)is a conceptual modelling approach for obligations and other features of the system in a model-driven methodology.Specialized tools interpret these models into other software artifacts such as code,test data and documentation.The generation of test cases permits the appropriate test data to be determined that have the aptitude to ascertain the requirements.This paper focuses on optimizing the test data obtained from UML activity and state chart diagrams by using Basic Genetic Algorithm(BGA).For generating the test cases,both diagrams were converted into their corresponding intermediate graphical forms namely,Activity Diagram Graph(ADG)and State Chart Diagram Graph(SCDG).Then both graphs will be combined to form a single graph called,Activity State Chart Diagram Graph(ASCDG).Both graphs were then joined to create a single graph known as the Activity State Chart Diagram Graph(ASCDG).Next,the ASCDG will be optimized using BGA to generate the test data.A case study involving a withdrawal from the automated teller machine(ATM)of a bank was employed to demonstrate the approach.The approach successfully identified defects in various ATM functions such as messaging and operation.
文摘A novel interoperability test sequences optimization scheme is proposed in which the genetic algorithm (GA) is used to obtain the minimal-length interoperability test sequences. During our work, the basic interoperability test sequences are generated based on the minimal-complete-coverage criterion, which removes the redundancy from conformance test sequences. Then interoperability sequences minimization problem can be considered as an instance of the set covering problem, and the GA is applied to remove redundancy in interoperability transitions. The results show that compared to conventional algorithm, the proposed algorithm is more practical to avoid the state space explosion problem, for it can reduce the length of the test sequences and maintain the same transition coverage.
基金supported by the Advanced Research Project of a National Department of China under Grant No.51317040102
文摘A new approach to select anoptimal set of test points is proposed. The described method uses fault-wise table and multi-objective genetic algorithm to find the optimal set of test points. First, the fault-wise table is constructed whose entries are measurements associated with faults and test points. The selection of optimal test points is transformed to the selection of the columns that isolate the rows of the table. Then, four objectives are described according to practical test requirements. The multi-objective genetic algorithm is explained. Finally, the presented approach is illustrated by a practical example. The results indicate that the proposed method can efficiently and accurately find the optimal set of test points and is practical for large scale systems.
文摘Pairwise testing is an effective test generation technique that requires all pairs of parameter values to be by at least one test case. It has been proven that generating minimum test suite is an NP-complete problem covered Genetic algorithms have been used for pairwise test suite generation by researchers. However, it is always a time-consuming process, which leads to significant limitations and obstacles for practical use of genetic algorithms towards large-scale test problems. Parallelism will be an effective way to not only enhance the computation performance but also improve the quality of the solutions. In this paper, we use Spark, a fast and general parallel computing platform, to parallelize the genetic algorithm to tackle the problem. We propose a two-phase parallelization algorithm including fitness evaluation parallelization and genetic operation parallelization. Experimental results show that our algorithm outperforms the sequential genetic algorithm and competes with other approaches in both test suite size and computational performance. As a result, our algorithm is a promising improvement of the genetic algorithm for pairwise test suite generation.
文摘In this era of VLSI circuits, testability is truly a very crucial issue.To generate a test set for a given circuit, choice of an algorithm from a number ofexisting test generation algorithms to apply is bound to vary from circuit to circuit.In this paper, the Genetic Algorithm is used in order to construct an accurate modelfor some existing test generation algorithms that are being used everywhere in theworld. Some objective quantitative measures are used as an effective tool in makingsuch choice. Such measures are so important to the analysis of algorithms that theybecome one of the subjects of this work.
基金supported by the National Natural Science Foundation of China(51605482)the Equipment Pre-research Project(41403020101).
文摘Test selection is to select the test set with the least total cost or the least total number from the alternative test set on the premise of meeting the required testability indicators.The existing models and methods are not suitable for system level test selection.The first problem is the lack of detailed data of the units’fault set and the test set,which makes it impossible to establish a traditional dependency matrix for the system level.The second problem is that the system level fault detection rate and the fault isolation rate(referred to as"two rates")are not enough to describe the fault diagnostic ability of the system level tests.An innovative dependency matrix(called combinatorial dependency matrix)composed of three submatrices is presented.The first problem is solved by simplifying the submatrix between the units’fault and the test,and the second problem is solved by establishing the system level fault detection rate,the fault isolation rate and the integrated fault detection rate(referred to as"three rates")based on the new matrix.The mathematical model of the system level test selection problem is constructed,and the binary genetic algorithm is applied to solve the problem,which achieves the goal of system level test selection.
文摘Software testing is one of the most crucial and analytical aspect to assure that developed software meets pre- scribed quality standards. Software development process in- vests at least 50% of the total cost in software testing process. Optimum and efficacious test data design of software is an important and challenging activity due to the nonlinear struc- ture of software. Moreover, test case type and scope deter- mines the quality of test data. To address this issue, software testing tools should employ intelligence based soft comput- ing techniques like particle swarm optimization (PSO) and genetic algorithm (GA) to generate smart and efficient test data automatically. This paper presents a hybrid PSO and GA based heuristic for automatic generation of test suites. In this paper, we described the design and implementation of the proposed strategy and evaluated our model by performing ex- periments with ten container classes from the Java standard library. We analyzed our algorithm statistically with test ad- equacy criterion as branch coverage. The performance ade- quacy criterion is taken as percentage coverage per unit time and percentage of faults detected by the generated test data. We have compared our work with the heuristic based upon GA, PSO, existing hybrid strategies based on GA and PSO and memetic algorithm. The results showed that the test case generation is efficient in our work.