English
Related papers

Related papers: Finding Bugs with Specification-Based Testing is E…

200 papers

Automated unit test generators, particularly search-based software testing tools like EvoSuite, are capable of generating tests with high coverage. Although these generators alleviate the burden of writing unit tests, they often pose…

Software Engineering · Computer Science 2024-08-22 Amirhossein Deljouyi , Roham Koohestani , Maliheh Izadi , Andy Zaidman

We present a small, formal language for specifying the behavior of simple console I/O programs. The design is driven by the concrete application case of testing interactive Haskell programs written by students. Specifications are…

Programming Languages · Computer Science 2025-06-27 Oliver Westphal , Janis Voigtländer

Evaluating the efficiency of algorithmic code requires test cases that expose runtime bottlenecks. Previous methods generate efficiency test cases either by increasing input size or by generating code-specific inputs that make the given…

Artificial Intelligence · Computer Science 2026-05-28 Soohan Lim , Joonghyuk Hahn , Hyundong Jin , Yo-Sub Han

A long-standing open challenge for automated program repair is the overfitting problem, which is caused by having insufficient or incomplete specifications to validate whether a generated patch is correct or not. Most available repair…

Software Engineering · Computer Science 2021-11-11 Omar I. Al-Bataineh , Anastasiia Grishina , Leon Moonen

Web applications continue to be a favorite target for hackers due to a combination of wide adoption and rapid deployment cycles, which often lead to the introduction of high impact vulnerabilities. Static analysis tools are important to…

Cryptography and Security · Computer Science 2022-01-19 Ibéria Medeiros , Nuno Neves , Miguel Correia

In recent years, we observe an increasing amount of software with machine learning components being deployed. This poses the question of quality assurance for such components: how can we validate whether specified requirements are fulfilled…

Software Engineering · Computer Science 2021-05-04 Arnab Sharma , Caglar Demir , Axel-Cyrille Ngonga Ngomo , Heike Wehrheim

Testing and debugging quantum software pose significant challenges due to the inherent complexities of quantum mechanics, such as superposition and entanglement. One challenge is indeterminacy, a fundamental characteristic of quantum…

Software Engineering · Computer Science 2025-02-10 Khushdeep Kaur , Dongchan Kim , Ainaz Jamshidi , Lei Zhang

Information-flow control mechanisms are difficult both to design and to prove correct. To reduce the time wasted on doomed proof attempts due to broken definitions, we advocate modern random testing techniques for finding counterexamples…

We introduce DafnyBench, the largest benchmark of its kind for training and evaluating machine learning systems for formal software verification. We test the ability of LLMs such as GPT-4 and Claude 3 to auto-generate enough hints for the…

Software testing is still a manual process in many industries, despite the recent improvements in automated testing techniques. As a result, test cases are often specified in natural language by different employees and many redundant test…

Software Engineering · Computer Science 2021-10-18 Markos Viggiato , Dale Paas , Chris Buzon , Cor-Paul Bezemer

Instrumenting programs for performing run-time checking of properties, such as regular shapes, is a common and useful technique that helps programmers detect incorrect program behaviors. This is specially true in dynamic languages such as…

Programming Languages · Computer Science 2018-04-09 Maximiliano Klemen , Nataliia Stulova , Pedro Lopez-Garcia , José F. Morales , Manuel V. Hermenegildo

While static analysis is useful in detecting early-stage hardware security bugs, its efficacy is limited because it requires information to form checks and is often unable to explain the security impact of a detected vulnerability. Large…

Cryptography and Security · Computer Science 2025-05-01 Baleegh Ahmad , Hammond Pearce , Ramesh Karri , Benjamin Tan

Automated testing tools typically create test cases that are different from what human testers create. This often makes the tools less effective, the created tests harder to understand, and thus results in tools providing less support to…

Software Engineering · Computer Science 2021-03-09 Eduard Enoiu , Robert Feldt

Despite various approaches being employed to detect vulnerabilities, the number of reported vulnerabilities shows an upward trend over the years. This suggests the problems are not caught before the code is released, which could be caused…

Cryptography and Security · Computer Science 2025-02-14 Karl Tamberg , Hayretdin Bahsi

Context: The rise of Artificial Intelligence (AI) in software engineering has led to the development of AI-powered test automation tools, promising improved efficiency, reduced maintenance effort, and enhanced defect-detection. However, a…

Software Engineering · Computer Science 2025-05-02 Vahid Garousi , Nithin Joy , Zafar Jafarov , Alper Buğra Keleş , Sevde Değirmenci , Ece Özdemir , Ryan Zarringhalami

Empirical researchers often perform model specification tests, such as Hausman tests and overidentifying restrictions tests, to assess the validity of estimators rather than that of models. This paper examines the effectiveness of such…

Econometrics · Economics 2025-09-25 Naoya Sueishi

Estimating software testability can crucially assist software managers to optimize test budgets and software quality. In this paper, we propose a new approach that radically differs from the traditional approach of pursuing testability…

Software Engineering · Computer Science 2023-08-01 Luca Guglielmo , Leonardo Mariani , Giovanni Denaro

Pointers are a powerful, but dangerous feature provided by the C and C++ programming languages, and incorrect use of pointers is a common source of bugs and security vulnerabilities. Making secure software is crucial, as vulnerabilities…

Formal Languages and Automata Theory · Computer Science 2024-11-01 Vlad-Alexandru Teodorescu , Dorel Lucanu

Accurately predicting faulty software units helps practitioners target faulty units and prioritize their efforts to maintain software quality. Prior studies use machine-learning models to detect faulty software code. We revisit past studies…

Software Engineering · Computer Science 2019-01-08 Libo Li , Stefan Lessmann , Bart Baesens

A recent case study from AWS by Chong et al. proposes an effective methodology for Bounded Model Checking in industry. In this paper, we report on a follow up case study that explores the methodology from the perspective of three research…

Software Engineering · Computer Science 2021-07-05 Siddharth Priya , Xiang Zhou , Yusen Su , Yakir Vizel , Yuyan Bao , Arie Gurfinkel