Parallelized And Concurrent Testing With Test::Async
summary
Test::Async replaces the core Test module as a drop-in replacement with one minor API change: use the test-suit start method so the harness waits for thread jobs. It runs parallelized subtests with automatic join, limits concurrent jobs by CPU, synchronizes simultaneous starts via a starter promise, and can execute tests in randomized order. Extensions are roles/bundles for new test tools and conditional runs, and custom reporters can emit TAP or stream results to a remote server as demonstrated.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:52Why Test
- 3:37Core Test
- 4:22Targets
- 6:09Architecture
- 7:22Terminology
- 9:08TestAsync Hub
- 14:38TestAsync Workflow
- 19:05Test Bundles
- 24:20Parallelization
- 30:20Random Testing
- 36:35When
related talks
32mParallel Testing World
31mPortable and Fast - How to implement a parallel test runner
30mHow to Test Asynchronous Code
46mAsync Testing on the JVM and Scala.js
59mWays to Parallelize Tests in JavaScript
44mAsync Testing on the JVM and Scala.js
45mTesting Asynchronous OTP
36mTesting Asynchronous Code in Swift 5.5
