Skip to content
STIMSMITH

Automated Test Case Generation

Concept WIKI v1 · 7/7/2026

Automated test case generation is the process of producing test cases for software systems without manual authoring, typically by combining symbolic analysis, constraint solving, model inference, or evolutionary search over a specification or model of the system under test.

Automated Test Case Generation

Automated test case generation refers to techniques and tools that derive executable test cases from a specification, model, or runtime behavior of a system, rather than having them written by hand. The evidence in the literature spans several paradigms: constraint-based generation from formal specifications, search-based generation guided by code coverage, and inference-based generation guided by learned models of system behavior.

Constraint-based generation from specifications

One approach derives test cases by symbolic animation of a specification using a constraint solver. In the approach described by Carlier et al. (Springer, 2008), a new constraint solver is used for the automated generation of test cases from specifications. The specification language is inspired by contract-oriented programming extended with finite state machines. Beyond generating correct argument values for method calls, the approach generates full test scenarios through symbolic animation of the specifications. The proposed CSP architecture can operate not only on integer or bounded domains but also on arbitrary types, using an original notion of type builder to connect type semantics with the CSP framework—for example, a string builder that automatically generates string instances depending on combinations of constraints. [1]

Security-driven automated generation in IIoT

In the Industrial Internet of Things (IIoT) context, automated test case generation has been coupled with threat modeling. Beckers et al. (arXiv:1911.06594) present an approach to automate the testing process from threat modeling onward, explicitly closing the gap between threat modeling and automated test case generation in order to systematically produce security test cases for IIoT systems whose high degree of integration creates a broad new threat surface. (arXiv:1911.06594)

Search-based generation for REST APIs

For microservice systems, EvoMaster uses Evolutionary Algorithms to automatically generate test cases for REST APIs. The 2024 work by Zhang et al. (arXiv:2412.03420) introduces MISH (Model Inference Search Heuristic), which uses real-time automaton learning to guide test case generation. MISH learns an automaton from the stream of log events emitted by different microservices within the same system, capturing sequential call patterns, and defines the fitness of a test case based on the path it traverses within the inferred automaton. Empirical evaluation on six real-world benchmark microservice applications compares MISH against the state-of-the-art MOSA technique for testing REST APIs and shows promising results for guiding automated test case generation within EvoMaster. (arXiv:2412.03420)

Related concepts

  • Constraint solver — used by constraint-based approaches to compute valid test inputs and scenarios from a specification. (chunk 996aa7eb)
  • Specification language — provides the formal input from which automated generators derive test cases; in the cited constraint-based work, the language is inspired by contract-oriented programming extended with finite state machines. (chunk 996aa7eb)

CITATIONS

3 sources
3 citations
[1] A constraint solver is used for the automated generation of test cases from specifications written in a language inspired by contract-oriented programming extended with finite state machines, enabling full test scenario generation via symbolic animation and a flexible CSP architecture with type builders. A Constraint Logic Programming Approach to Automated Testing
[2] For Industrial Internet of Things applications, an approach automates the testing process from threat modeling onward, closing the gap between threat modeling and automated test case generation to systematically produce security tests. Integrating Threat Modeling and Automated Test Case Generation into Industrialized Software Security Testing
[3] EvoMaster uses Evolutionary Algorithms to automatically generate test cases for microservices' REST APIs, and the MISH heuristic uses real-time automaton learning from microservice log events to guide test case generation, with empirical evaluation against MOSA on six real-world microservice benchmarks. Automated Test-Case Generation for REST APIs Using Model Inference Search Heuristic