PHPUnit 10: The new Event Subsystem
summary
PHPUnit 10 replaces TestListener/TestHook with a new event subsystem that emits 45 distinct event types, attaches telemetry (hrtime and memory) to every event, and offers a tracer that captures every event stream. The system already serializes events for tracing and can drive new loggers, but it is not release ready: child‑process event forwarding and final log format decisions remain unimplemented, and PHP 8 is the minimum target.
AI-written summary · about
chapters (22)
- 0:00Intro
- 1:58Interview
- 3:58Introduction
- 8:57TestTalk
- 10:20Log Format
- 13:30EU Fossa 2
- 16:03Event Subsystem
- 18:18The 45 Events
- 23:18How to subscribe
- 25:23Dedicated interfaces
- 28:08Registering a tracer
- 29:18The new tracer
- 30:18Running the tracer
- 32:08Release details
- 34:58Features
- 36:08Custom Events
- 37:53Child Processes
- 41:28New log standard
- 42:58Custom loggers
- 44:28The headache for thirdparty developers
- 46:28Test listener interface deprecated
- 48:28PHP 8 minimum
related talks
51mPHPUnit 10
48m"PHPUnit 10-12: What to know & what to forget"
50mFrom Events to Insights: Testing and Documenting Event‑Based Software
33mSo you think you know PHPUnit?
49mMaking PHPUnit Better
39mMy Top 10 PHPUnit Tips & Tricks
45m30 Years of PHP, 25 Years of Testing: A Journey Through Code and Community
49mDockerize your unit tests for faster feedback
