2020
DOI: 10.1007/978-3-030-47147-7_4
|View full text |Cite
|
Sign up to set email alerts
|

How to Specify It!

Abstract: Property-based testing tools test software against a specification, rather than a set of examples. This tutorial paper presents five generic approaches to writing such specifications (for purely functional code). We discuss the costs, benefits, and bug-finding power of each approach, with reference to a simple example with eight buggy variants. The lessons learned should help the reader to develop effective propertybased tests in the future.*Examples> quickCheck prop_Reverse +++ OK, passed 100 tests.We have me… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1

Citation Types

0
1
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
4
1

Relationship

0
5

Authors

Journals

citations
Cited by 5 publications
(1 citation statement)
references
References 22 publications
0
1
0
Order By: Relevance
“…More recently, MT has been increasingly gaining interest in classic AI fields for testing systems powered by machine learning, including: machine translation (Zhou and Sun, 2018;He et al, 2019), autonomous driving (Zhang et al, 2018;Zhou and Sun, 2019), and generic NLP (natural language processing) models (Ma et al, 2020;Ribeiro et al, 2020). MT can have comparable bug-revealing effectiveness to model-based testing, and hence is a useful alternative to test an implementation, especially in situations where a model is expensive to construct (Hughes, 2020).…”
Section: Introductionmentioning
confidence: 99%
“…More recently, MT has been increasingly gaining interest in classic AI fields for testing systems powered by machine learning, including: machine translation (Zhou and Sun, 2018;He et al, 2019), autonomous driving (Zhang et al, 2018;Zhou and Sun, 2019), and generic NLP (natural language processing) models (Ma et al, 2020;Ribeiro et al, 2020). MT can have comparable bug-revealing effectiveness to model-based testing, and hence is a useful alternative to test an implementation, especially in situations where a model is expensive to construct (Hughes, 2020).…”
Section: Introductionmentioning
confidence: 99%