Testing Incomplete Programs in OCaml
summary
Testing frameworks get a third verdict called incomplete that distinguishes unfinished code from real failures; small edits to Alcotest and QCheck make them return incomplete, pass, discard or fail. The demo runs a substitution-based lambda interpreter and reports 760 hits with 444 vacuous passes during early development; after fixes it shows 51 passes plus a real shrinking failure, and running incremental QCheck on the multicoretests suite yields exit code 0 while surfacing many incompleteness sites.
AI-written summary · about
chapters (10)
- 0:00Testing incomplete OCaml programs
- 1:25Completion refinement in programming
- 3:54Demo: testing with AlTest
- 6:26Property-based testing incomplete functions
- 10:03Incremental development with tests
- 12:41Completion refinement inspiration
- 15:53Framework-level reformulation
- 17:00Evaluating with Multicore OCaml
- 19:50Output examples and related work
- 21:38Q&A
related talks
33mAnalyzing Functional Programs
46mTesting in the world of Functional Programming
01h 18mA Tale of Two Lambdas: A Haskeller's Journey into OCaml
46mPoka Yoke Mistake proofing via Functional Programming
20mInteractive Haskell Type Inference Exploration (Extended Abstract)
46mOCaml for Fun & Profit: An Experience Report
53mProperty Based Testing, By Example
32mEffective Programming in OCaml
