Jonathan Fowler
Failing faster: overlapping patterns for property-based testing
Fowler, Jonathan; Hutton, Graham
Abstract
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.
Citation
Fowler, J., & Hutton, G. (2017). Failing faster: overlapping patterns for property-based testing. In Practical Aspects of Declarative Languages: 19th International Symposium, PADL 2017, Paris, France, January 16-17, 2017: Proceedings (103-119). https://doi.org/10.1007/978-3-319-51676-9-7
Conference Name | 19th International Symposium on Practical Aspects of Declarative Languages |
---|---|
Start Date | Jan 16, 2017 |
End Date | Jan 20, 2017 |
Acceptance Date | Oct 23, 2016 |
Online Publication Date | Apr 1, 2017 |
Publication Date | Apr 1, 2017 |
Deposit Date | Nov 14, 2016 |
Publicly Available Date | Apr 2, 2018 |
Publisher | Springer Publishing Company |
Peer Reviewed | Peer Reviewed |
Pages | 103-119 |
Series Title | Lecture Notes in Computer Science |
Series Number | 10137 |
Series ISSN | 0302-9743 |
Book Title | Practical Aspects of Declarative Languages: 19th International Symposium, PADL 2017, Paris, France, January 16-17, 2017: Proceedings |
Chapter Number | 7 |
ISBN | 978-3-319-51676-9 |
DOI | https://doi.org/10.1007/978-3-319-51676-9-7 |
Public URL | https://nottingham-repository.worktribe.com/output/822114 |
Publisher URL | https://www.springer.com/gb/book/9783319516752 |
Files
failing-faster.pdf
(254 Kb)
PDF
You might also like
Monadic compiler calculation (functional pearl)
(2022)
Journal Article
Calculating dependently-typed compilers (functional pearl)
(2021)
Journal Article
Calculating correct compilers II: Return of the register machines
(2020)
Journal Article
Liquidate your assets: reasoning about resource usage in liquid Haskell
(2019)
Journal Article
Call-by-need is clairvoyant call-by-value
(2019)
Journal Article
Downloadable Citations
About Repository@Nottingham
Administrator e-mail: digital-library-support@nottingham.ac.uk
This application uses the following open-source libraries:
SheetJS Community Edition
Apache License Version 2.0 (http://www.apache.org/licenses/)
PDF.js
Apache License Version 2.0 (http://www.apache.org/licenses/)
Font Awesome
SIL OFL 1.1 (http://scripts.sil.org/OFL)
MIT License (http://opensource.org/licenses/mit-license.html)
CC BY 3.0 ( http://creativecommons.org/licenses/by/3.0/)
Powered by Worktribe © 2024
Advanced Search