Academia.eduAcademia.edu

Test Data Generation

description613 papers
group32 followers
lightbulbAbout this topic
Test Data Generation is the process of creating data sets that are used to validate the functionality, performance, and security of software applications. This involves producing synthetic or real data that mimics expected user inputs and system behaviors to ensure comprehensive testing and quality assurance.
lightbulbAbout this topic
Test Data Generation is the process of creating data sets that are used to validate the functionality, performance, and security of software applications. This involves producing synthetic or real data that mimics expected user inputs and system behaviors to ensure comprehensive testing and quality assurance.

Key research themes

1. How can constraint-based and symbolic execution techniques be used to automate fault-revealing test data generation?

This research area focuses on leveraging constraint logic, algebraic constraints, and symbolic execution to derive test data that satisfies specific fault detection criteria, improving testing effectiveness and automation. It matters because manual test data generation remains labor-intensive, and these formal methods provide systematic ways to approximate test set adequacy, including mutation adequacy, to detect faults more reliably.

Key finding: Presented a mutation analysis-driven technique that formulates algebraic constraints representing test cases designed to detect specific fault types. The approach approximates relative adequacy (mutation adequacy) by... Read more
Key finding: Proposed a novel approach combining symbolic execution with constraint logic programming to overcome traditional symbolic execution challenges in test data generation. The ATGen tool produces test inputs automatically by... Read more
Key finding: Introduced a divide-and-conquer approach based on adaptive random testing (ART) that computes tight over-approximations of input sub-domains for feasible paths via dynamic domain partitioning. The approach reduces invalid... Read more

2. How can evolutionary and search-based algorithms improve test data generation for object-oriented and path coverage testing?

This research theme explores applying evolutionary computing paradigms—such as genetic algorithms (GA), simulated annealing, and other metaheuristics—to automatically generate or select test data that maximize code coverage under structural criteria like statement, branch, and path coverage. These techniques are particularly relevant for the complexity of object-oriented programming features and hard-to-cover paths, enabling efficient search in large input spaces with optimization guidance.

Key finding: Surveyed metaheuristic search-based testing methods specialized for OO software, highlighting how evolutionary algorithms (EAs) such as genetic algorithms (GA) optimize test data to increase coverage criteria (e.g., statement... Read more
Key finding: Applied genetic algorithms specifically to Java Card (JSC) applets to automatically generate minimal test data sets satisfying branch coverage criteria. The GA approach substantially reduced the number of test data needed and... Read more
Key finding: Developed a feedback-directed search technique that dynamically groups paths and temporarily removes groups with stagnant fitness improvements, thus avoiding wasted search efforts on infeasible or difficult paths during... Read more
Key finding: Proposed AutoTDGen, which automates test data generation by extracting data flow (definition-use pairs) information from UML activity diagrams as test bases, combined with a genetic algorithm to maximize coverage of these... Read more

3. What roles do combinatorial and pairwise testing strategies play in efficient test data set generation under resource constraints?

This theme addresses strategies for mitigating combinatorial explosion in test input spaces by focusing on covering combinations of input parameters to a specified interaction strength, primarily pairwise (2-wise) coverage. Efficient algorithms and benchmarking frameworks facilitate selecting minimal test suites that maximize testing effectiveness under practical constraints such as limited time and computational power.

Key finding: Proposed the IRPS algorithm as an efficient and deterministic strategy for pairwise test data generation that outperforms established methods such as AETG, IPO, simulated annealing, and ant colony optimization in producing... Read more
Key finding: Developed a comprehensive benchmarking framework that integrates multiple combinatorial test suite generators (e.g., ACTS, CAgen, CASA, Medici, PICT), enabling fair and systematic evaluation across key metrics: test suite... Read more

All papers in Test Data Generation

This article is concerned with the design and implementation of multimodal user interfaces. The use of multiple modalities such as vision, speech and gesture opens a vast world of possibilities in user interface design. Although the... more
Combinatorial Interaction Testing (CIT) is a technique used to discover faults caused by parameter interactions in highly configurable systems. These systems tend to be large and exhaustive testing is generally impractical. Indeed, when... more
ID: 1750 Paul Kantor, Christie Nelson, Fred Roberts, William M. Pottenger CCICADA, Rutgers University Piscataway, New Jersey
The relevance of grammatical inference techniques to the semiautomatic construction from empirical data, of a model of human decision making, is outlined. A grammatical inference problem is presented in which the least complex stochastic... more
As the Life Insurance industry undergoes rapid digital transformation, the need for more intelligent and adaptive testing methods has become crucial. Traditional test case generation methods often struggle to keep pace with the industry's... more
Software test-data generation is the process of identifying a set of data, which satisfies a given testing criterion. For solving this difficult problem there were a lot of research works, which have been done in the past. The most... more
Web Services promote the specification-based cooperation and collaboration among distributed applications in an open environment. To ensure the quality of the services that are published, bound, invoked and integrated at runtime, test... more
The rapid evolution of software development methodologies has placed increasing emphasis on the need for efficiency, reliability, and speed in delivering high-quality applications. Continuous Integration and Continuous Deployment (CI/CD)... more
This is a survey paper of the user of Genetic Algorithms in Structural Testing. Structural testing like statement coverage or branch coverage can be automated through a variety of algorithms. Genetic Algorithms can be very useful in... more
An important problem that arises in path oriented testing is the generation of test data that causes a program to follow a given pat.h. In this paper, we present a novel program execution based approach using an iterative relaxation... more
Property-based testing implies selecting test data satisfying coverage criteria on user-specified properties. However, current automatic test data generation techniques adopt direct generate-and-test approaches for this task. In... more
This paper explores the integration of Generative Adversarial Networks (GANs) into business analytics, particularly in simulating market dynamics for strategic consulting. By leveraging GANs' ability to generate high-fidelity simulations... more
One of the major difficulties in software testing is the automatic generation of test data that satisfy a given adequacy criterion. This paper presents an automatic test data generation technique that uses a genetic algorithm (GA), which... more
Synthetic transactions have become a pivotal enabler for financial institutions striving to achieve unparalleled system integrity, unwavering operational performance, and exceptional customer satisfaction in a landscape dominated by... more
Test data plays a pivotal role in the software testing lifecycle, enabling quality assurance teams to emulate real-world scenarios while safeguarding sensitive information. It is essential for ensuring comprehensive test coverage,... more
Lurette is an automated testing tool dedicated to reactive programs. The test process is automated at two levels: given a formal description of the System Under Test (SUT) environment, Lurette generates realistic input sequences; and,... more
Glass-box test data generation (TDG) is the process of automatically generating test input data for a program by considering its internal structure. This is generally accomplished by performing symbolic execution of the program where the... more
Despite the enormous success that manual and automated refactoring has enjoyed during the last decade, we know little about the practice of refactoring. Understanding the refactoring practice is important for developers, refactoring tool... more
In the continually evolving domain of software development, guaranteeing the dependability and functionality of Application Programming Interfaces (APIs) is of utmost importance. Traditional approaches to API testing frequently encounter... more
Lurette is an automated testing tool dedicated to reactive programs. The test process is automated at two levels: given a formal description of the System Under Test (SUT) environment, Lurette generates realistic input sequences; and,... more
هلاقم تاعلاطا هدیکچ لماک یشهوژپ هلاقم :تفایرد 17 یدرورف ن 1396 :شریذپ 05 ادرخ د 1396 :تیاس رد هئارا 13 دادرم 1396 هنیهب بقع هب ماگ رلرتنک ود درکلمع هسیاقم هب هلاقم نیا رلرتنک و تارذ ماحدزا متیروگلا اب هدش LQR رواه تلاح رد روتورداوک کی یور... more
Automated test data generation through evolutionary testing (ET) is a topic of interest to the software engineering community. While there are many ET-based techniques for automatically generating test data from code, the problem of... more
The applicability of evolutionary algorithms in software testing has been an area of importance for many researchers. In this paper, we have studied the implementation of one such evolutionary algorithm namely genetic algorithm. Genetic... more
Several studies have shown that automated testing is a promising approach to save significant amounts of time and money in the industry of reactive software. But automated testing requires a formal framework and adequate means to generate... more
In this paper we analyze the application of parallel and sequential evolutionary algorithms to the automatic test data generation problem. The problem consists of automatically creating a set of input data to test a program. This is a... more
An integrated tes ing criterion is proposed that extends traditional criteria to ~e effective to reveal domain errors. The method requires many fevJer test cases and is, applicable for any kind of predicates. An au :omated test data... more
In this paper, we discuss the application of search-based software testing techniques for unit level testing of a real-world telecommunication middleware at Ericsson. Input data for the system under test consists of nested data... more
In this paper, we discuss the application of search-based software testing techniques for unit level testing of a real-world telecommunication middleware at Ericsson. Our current implementation analyzes the existing test cases to handle... more
Abstract-In order to meet market demands for quality software products, software engineers are increasingly under pressure to test more lines of codes. To maintain acceptable test coverage, software engineers need to consider a... more
Web applications are vital components of the global information infrastructure, and it is important to ensure their dependability. Many techniques and tools for validating web applications have been created, but few of these have... more
When strongly absorbing aerosols are present in the atmosphere, the usual two-step procedure of processing ocean color data-͑1͒ atmospheric correction to provide the water-leaving reflectance ͑ w ͒, followed by ͑2͒ relating w to the water... more
The applicability of evolutionary algorithms in software testing has been an area of importance for many researchers. In this paper, we have studied the implementation of one such evolutionary algorithm namely genetic algorithm. Genetic... more
In today's financial landscape, the availability of high-quality data is essential for decision-making, risk management, and innovation. However, accessing real-world financial data can be challenging due to privacy concerns, data access... more
We summarize several contributions related to the PHP Realistic Annotation and SPEcification Language (Praspel). This language extends PHP programs with annotations for the formal specification of the behavior of their functions and for... more
Code review and inspection techniques are considered vital for defect detection during analysis and design. Automated static code analyzers are essentially an approach to performing code reviews and inspections in an efficient and timely... more
Code review and inspection techniques are considered vital for defect detection during analysis and design. Automated static code analyzers are essentially an approach to performing code reviews and inspections in an efficient and timely... more
Based Software Engineering (SBSE) is the field of Software Engineering that helps in solving the problems using metaheuristic approach rather than solving the problems manually i.e. it helps in providing the automated solution for the... more
Reactive systems used in safety-critical domains demand high level of confidence. The development of these systems, which are submitted to several normative recommendations, is complex and expensive. Reactive systems can be developed by... more
We propose to improve current path-wise methods for automatic test data generation by using a new method named principal slicing. This method statically derives program slices with a near minimum number of influencing predicates, using... more
We describe a technique and a tool called Qex for generating input tables and parameter values for a given parameterized SQL query. The evaluation semantics of an SQL query is translated into a specific background theory for a... more
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of... more
This paper presents a set of methods that uses a genetic algorithm for automatic test-data generation in software testing. For several years researchers have proposed several methods for generating test data which had different drawbacks.... more
This paper presents a set of methods that uses a genetic algorithm for automatic test-data generation in software testing. For several years researchers have proposed several methods for generating test data which had different drawbacks.... more
Test generation is a costly but necessary testing activity to increase the quality of software projects. Automated testing tools based on evolutionary computation principles constitute an appealing modern approach to support testing... more
To derive a program for a given specification R means to find an artifact P that satisfies two conditions: P is executable in some programming language; and P is correct with respect to R. Refinementbased program derivation achieves this... more
High-level Petri nets are a graphical language for the modeling of distributed information systems. Petri nets can be validated by simulation. In this paper, a technique is proposed which generates test cases for the simulation of... more
Nowadays, Aspect-Oriented Programming (AOP) paradigm is getting more popularity in the field of software development. But testing an Aspect-oriented software system (AOSS) is not well matured. Therefore, many researchers have been... more
Download research papers for free!