xUnit test runners are one of the basic capabilities of rapid iterative development practices such as Continuous Integration and Test Driven Development.
I will explore how test runners are generally implemented in modern programming languages like PHP, JavaScript and Ruby. With this foundational knowledge in place, I will then discuss test runner features and how to implement them when they are missing from the local language/platform xUnit framework.
Topics covered in depth will include:
• How to get the output you want from your test runner: JUnit.xml, JSON, TAP and even emoji!
• Instrumenting your test runner to get granular timing and debugging information.
• A real-world example of adding functionality to a test runner.