English
Related papers

Related papers: Towards Substructural Property-Based Testing

200 papers

Property-based testing (PBT) is a technique for validating code against an executable specification by automatically generating test-data. We present a proof-theoretical reconstruction of this style of testing for relational specifications…

Logic in Computer Science · Computer Science 2025-01-22 Dale Miller , Alberto Momigliano

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

This paper presents a framework to apply property-based testing (PBT) on top of temporal formal models. The aim of this work is to help software engineers to understand temporal models that are presented formally and to make use of the…

Software Engineering · Computer Science 2017-05-30 Nasser Alzahrani , Maria Spichkova , Jan Olaf Blech

$\alpha$Check is a light-weight property-based testing tool built on top of $\alpha$Prolog, a logic programming language based on nominal logic. $\alpha$Prolog is particularly suited to the validation of the meta-theory of formal systems,…

Logic in Computer Science · Computer Science 2016-05-02 James Cheney , Alberto Momigliano , Matteo Pessina

We consider a new approach to generate tests from natural language. Rather than relying on machine learning or templated extraction from structured comments, we propose to apply classic ideas from linguistics to translate natural-language…

Software Engineering · Computer Science 2022-02-14 Colin S. Gordon

Property-based testing (PBT) is a popular technique for establishing confidence in software, where users write properties -- i.e., executable specifications -- that can be checked many times in a loop by a testing framework. In modern PBT…

Software Engineering · Computer Science 2026-02-24 Alperen Keles , Justine Frank , Ceren Mert , Harrison Goldstein , Leonidas Lampropoulos

Property-based testing is a powerful method to validate program correctness. It is, however, not widely use in industry as the barrier of entry can be very high. One of the hindrances is to write the generators that are needed to generate…

Programming Languages · Computer Science 2023-09-13 Triera Gashi , Sophie Adeline Solheim Bosio , Joachim Tilsted Kristensen , Michael Kirkedal Thomsen

In this paper we propose an approach to reasoning about properties of imperative programs. We assume in this context that the meanings of program constructs are described using rules in the natural semantics style with the additional…

Logic in Computer Science · Computer Science 2015-03-04 Daniel DaCosta

We present Quickstrom, a property-based testing system for acceptance testing of interactive applications. Using Quickstrom, programmers can specify the behaviour of web applications as properties in our testing-oriented dialect of Linear…

Programming Languages · Computer Science 2022-03-23 Liam O'Connor , Oskar Wickström

We present an automated framework for solidifying the cohesion between software specifications, their dependently typed models, and implementation at compile time. Model Checking and type checking are currently separate techniques for…

Programming Languages · Computer Science 2024-07-18 Thomas Ekström Hansen , Edwin Brady

Mutation testing is an established software quality assurance technique for the assessment of test suites. While it is well-suited to estimate the general fault-revealing capability of a test suite, it is not practical and informative when…

Software Engineering · Computer Science 2023-02-01 Ezio Bartocci , Leonardo Mariani , Dejan Nickovic , Drishti Yadav

Property-based random testing a la QuickCheck requires building efficient generators for well-distributed random data satisfying complex logical predicates, but writing these generators can be difficult and error prone. We propose a…

Programming Languages · Computer Science 2019-10-15 Leonidas Lampropoulos , Diane Gallois-Wong , Catalin Hritcu , John Hughes , Benjamin C. Pierce , Li-yao Xia

We present in this paper a model-based testing approach aiming at generating test cases from a UML/OCL model and a given test property. The property is expressed using a dedicated formalism based on patterns, and automatically translated…

Software Engineering · Computer Science 2014-03-31 Kalou Cabrera Castillos , Frédéric Dadeau , Jacques Julliand

Property-based testing (PBT), while an established technique in the software testing research community, is still relatively underused in real-world software. Pain points in writing property-based tests include implementing diverse random…

Software Engineering · Computer Science 2024-07-23 Vasudev Vikram , Caroline Lemieux , Joshua Sunshine , Rohan Padhye

Metamorphic testing (MT) is a general approach for the testing of a specific kind of software systems -- so-called ``non-testable'', where the ``classical'' testing approaches are difficult to apply. MT is an effective approach for…

Software Engineering · Computer Science 2022-11-23 Nasser Alzahrani , Maria Spichkova , James Harland

Property Testing is a formal framework to study the computational power and complexity of sampling from combinatorial objects. A central goal in standard graph property testing is to understand which graph properties are testable with…

Data Structures and Algorithms · Computer Science 2025-09-08 Artur Czumaj , Christian Sohler , Stefan Walzer

A coverage type generalizes refinement types found in many functional languages with support for must-style underapproximate reasoning. Property-based testing frameworks are one particularly useful domain where such capabilities are useful…

Programming Languages · Computer Science 2025-09-03 Zhe Zhou , Benjamin Delaware , Suresh Jagannathan

We introduce a new logic named Quantitative Confidence Logic (QCL) that quantifies the level of confidence one has in the conclusion of a proof. By translating a fault tree representing a system's architecture to a proof, we show how to use…

Software Engineering · Computer Science 2021-07-26 Clovis Eberhart , Akihisa Yamada , Stefan Klikovits , Shin-ya Katsumata , Tsutomu Kobayashi , Ichiro Hasuo , Fuyuki Ishikawa

Concolic testing mixes symbolic and concrete execution to generate test cases covering paths effectively. Its benefits have been demonstrated for more than 15 years to test imperative programs. Other programming paradigms, like logic…

Logic in Computer Science · Computer Science 2020-02-18 Sophie Fortz , Fred Mesnard , Etienne Payet , Gilles Perrouin , Wim Vanhoof , German Vidal

Several formal systems, such as resolution and minimal model semantics, provide a framework for logic programming. In this paper, we will survey the use of structural proof theory as an alternative foundation. Researchers have been using…

Logic in Computer Science · Computer Science 2021-11-02 Dale Miller
‹ Prev 1 2 3 10 Next ›