Quickstrom: Property-based acceptance testing with LTL specifications
summary
Quickstrom brings property-based testing to WebDriver acceptance tests by running generated action sequences against a web UI and checking LTL specifications via formula progression. The specification language spectrum maps DOM queries and actions to atomic propositions and adds numeric subscripts on next to demand additional states. Evaluation on the ToDo MVC benchmark reports an alarmingly high failure rate across many framework implementations, with most bugs discovered using trace lengths of about 100; the tool is open source.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 0:20What is propertybased testing
- 1:10The dark ages
- 1:45What is acceptance testing
- 2:37Prepropertybased testing
- 6:40Linear temporal logic
- 8:41LTL properties
- 9:34Quickcheck
- 14:10Next operators
- 14:36Eventually operators
- 15:08ToDo MVC benchmark
- 15:21Results
- 15:41Bugs
- 16:10More details
- 16:30Questions
related talks
36mQuickstrom: Specifying and Testing Web Applications
50mSub-second acceptance tests
45mTesting Web Services with QuickCheck
01h 14mContinuous Testing
36mProperty Based Testing: From Theory to Practice
30mProperty-based Testing for Godly Tests
39mWeb Testing with Logic Programming
21mProperty-based testing - let your testing library work for you
