Failing faster: overlapping patterns for property-based testing
In property-based testing, a key problem is generating input data that satisfies the precondition of a property. One approach is to attempt to do so automatically, from the definition of the precondition itself. This idea has been realised using the technique of needed narrowing, as in the Lazy Smal...
| Main Authors: | , |
|---|---|
| Format: | Conference or Workshop Item |
| Published: |
2016
|
| Online Access: | https://eprints.nottingham.ac.uk/38676/ |
| _version_ | 1848795665877958656 |
|---|---|
| author | Fowler, Jonathan Hutton, Graham |
| author_facet | Fowler, Jonathan Hutton, Graham |
| author_sort | Fowler, Jonathan |
| building | Nottingham Research Data Repository |
| collection | Online Access |
| description | In property-based testing, a key problem is generating input data that satisfies the precondition of a property. One approach is to attempt to do so automatically, from the definition of the precondition itself. This idea has been realised using the technique of needed narrowing, as in the Lazy SmallCheck system, however in practice this method often leads to excessive backtracking resulting in poor efficiency. To reduce the amount of backtracking, we develop an extension to needed narrowing that allows preconditions to fail faster based on the use of overlapping patterns. We formalise our extension, show how it can be implemented, and demonstrate that it improves efficiency in many cases. |
| first_indexed | 2025-11-14T19:35:42Z |
| format | Conference or Workshop Item |
| id | nottingham-38676 |
| institution | University of Nottingham Malaysia Campus |
| institution_category | Local University |
| last_indexed | 2025-11-14T19:35:42Z |
| publishDate | 2016 |
| recordtype | eprints |
| repository_type | Digital Repository |
| spelling | nottingham-386762020-05-04T18:15:58Z https://eprints.nottingham.ac.uk/38676/ Failing faster: overlapping patterns for property-based testing Fowler, Jonathan Hutton, Graham In property-based testing, a key problem is generating input data that satisfies the precondition of a property. One approach is to attempt to do so automatically, from the definition of the precondition itself. This idea has been realised using the technique of needed narrowing, as in the Lazy SmallCheck system, however in practice this method often leads to excessive backtracking resulting in poor efficiency. To reduce the amount of backtracking, we develop an extension to needed narrowing that allows preconditions to fail faster based on the use of overlapping patterns. We formalise our extension, show how it can be implemented, and demonstrate that it improves efficiency in many cases. 2016-10-23 Conference or Workshop Item PeerReviewed Fowler, Jonathan and Hutton, Graham (2016) Failing faster: overlapping patterns for property-based testing. In: Proceedings of the 19th International Symposium on Practical Aspects of Declarative Languages, 18-20 Jan 2017, Paris, France. (In Press) |
| spellingShingle | Fowler, Jonathan Hutton, Graham Failing faster: overlapping patterns for property-based testing |
| title | Failing faster: overlapping patterns for property-based testing |
| title_full | Failing faster: overlapping patterns for property-based testing |
| title_fullStr | Failing faster: overlapping patterns for property-based testing |
| title_full_unstemmed | Failing faster: overlapping patterns for property-based testing |
| title_short | Failing faster: overlapping patterns for property-based testing |
| title_sort | failing faster: overlapping patterns for property-based testing |
| url | https://eprints.nottingham.ac.uk/38676/ |