Quickstrom: property-based acceptance testing with LTL specifications
Liam O'Connor, Oskar Wickström
Abstract
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 Temporal Logic (LTL) called QuickLTL, and then automatically test their application against the given specification with hundreds of automatically generated interactions. QuickLTL extends existing finite variants of LTL for the testing use-case, determining likely outcomes from partial traces whose minimum length is itself determined by the LTL formula. This temporal logic is embedded in our specification language, Specstrom, which is designed to be approachable to web programmers, expressive for writing specifications, and easy to analyse. Because Quickstrom tests only user-facing behaviour, it is agnostic to the implementation language of the system under test. We therefore formally specify and test many implementations of the popular TodoMVC benchmark, used for evaluation and comparison across various web frontend frameworks and languages. Our tests uncovered bugs in almost half of the available implementations.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext e27a0b79-734d-4fb0-aec3-8d51d1453134Cited by top-tier papers8
- An Empirical Study of Functional Bugs in Android AppsYiheng Xiong, Mengqian Xu, Ting Su, Jingling Sun et al.ISSTA 2023 · 40 citations
- Property-Based Testing in PracticeHarrison Goldstein, Joseph W. Cutler, Daniel Dickstein, Benjamin C. Pierce et al.ICSE 2024 · 21 citations
- Property-Based Fuzzing for Finding Data Manipulation Errors in Android AppsJingling Sun, Ting Su, Jiayi Jiang, Jue Wang et al.FSE 2023 · 16 citations
- General and Practical Property-based Testing for Android AppsYiheng Xiong, Ting Su, Jue Wang, Jingling Sun et al.ASE 2024 · 5 citations
- Misconceptions in Finite-Trace and Infinite-Trace Linear Temporal LogicBen Greenman, Siddhartha Prasad, Antonio Di Stasio, Shufang Zhu et al.FM 2024 · 5 citations
Builds on1
Related papers
- Programming and execution models for parallel bounded exhaustive testingNader Al Awar, Kush Jain, Christopher J. Rossbach, Milos GligoricOOPSLA 2021 · 4 citations
- From Natural Language to Executable Properties for Property-Based Testing of Mobile Apps (Experience Paper)Yiheng Xiong, Ting Su, Jingling Sun, Jue Wang et al.ISSTA 2026
- PropCov: Effective Coverage Reporting for Property-Based TestingJesse Coultas, Joseph Wiseman, Luís PinaISSTA 2026
- Tyche: Making Sense of PBT EffectivenessHarrison Goldstein, Jeffrey Tao, Zac Hatfield-Dodds, Benjamin C. Pierce et al.UIST 2024 · 4 citations
- Model-based testing of networked applicationsYishuai Li, Benjamin C. Pierce, Steve ZdancewicISSTA 2021 · 9 citations
