The oracle problem in software testing: A survey
Testing involves examining the behaviour of a system in order to discover potential faults.
Given an input for a system, the challenge of distinguishing the corresponding desired …
Given an input for a system, the challenge of distinguishing the corresponding desired …
Loop invariants: Analysis, classification, and examples
Software verification has emerged as a key concern for ensuring the continued progress of
information technology. Full verification generally requires, as a crucial step, equip** each …
information technology. Full verification generally requires, as a crucial step, equip** each …
Software testing: a research travelogue (2000–2014)
Despite decades of work by researchers and practitioners on numerous software quality
assurance techniques, testing remains one of the most widely practiced and studied …
assurance techniques, testing remains one of the most widely practiced and studied …
[PDF][PDF] A comprehensive survey of trends in oracles for software testing
Testing involves examining the behaviour of a system in order to discover potential faults.
Determining the desired correct behaviour for a given input is called the “oracle problem” …
Determining the desired correct behaviour for a given input is called the “oracle problem” …
Inferring method specifications from natural language API descriptions
Application Programming Interface (API) documents are a typical way of describing legal
usage of reusable software libraries, thus facilitating software reuse. However, even with …
usage of reusable software libraries, thus facilitating software reuse. However, even with …
Test Oracle Automation in the era of LLMs
The effectiveness of a test suite in detecting faults highly depends on the quality of its test
oracles. Large Language Models (LLMs) have demonstrated remarkable proficiency in …
oracles. Large Language Models (LLMs) have demonstrated remarkable proficiency in …
Synthesis modulo recursive functions
We describe techniques for synthesis and verification of recursive functional programs over
unbounded domains. Our techniques build on top of an algorithm for satisfiability modulo …
unbounded domains. Our techniques build on top of an algorithm for satisfiability modulo …
[BUCH][B] The art and science of analyzing software data
The Art and Science of Analyzing Software Data provides valuable information on analysis
techniques often used to derive insight from software data. This book shares best practices …
techniques often used to derive insight from software data. This book shares best practices …
Using automated program repair for evaluating the effectiveness of fault localization techniques
Many techniques on automated fault localization (AFL) have been introduced to assist
developers in debugging. Prior studies evaluate the localization technique from the …
developers in debugging. Prior studies evaluate the localization technique from the …
Does automated unit test generation really help software testers? a controlled empirical study
Work on automated test generation has produced several tools capable of generating test
data which achieves high structural coverage over a program. In the absence of a …
data which achieves high structural coverage over a program. In the absence of a …