Test2::Manual::Tooling - Manual page for tool authors.
Contents
Copyright
Copyright 2018 Chad Granum <exodist@cpan.org>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl
itself.
See http://dev.perl.org/licenses/
perl v5.40.1 2025-07-03 Test2::Manual::Tooling(3perl)
Description
This section covers writing new tools, plugins, and other Test2 components.
Maintainers
Chad Granum <exodist@cpan.org>
Name
Test2::Manual::Tooling - Manual page for tool authors.
Plugin Tutorials
TAKINGACTIONWHENANEWTOOLSTARTS
Test2::Manual::Tooling::Plugin::ToolStarts - How to add behaviors that occur when a tool starts work.
TAKINGACTIONAFTERATOOLISDONE
Test2::Manual::Tooling::Plugin::ToolCompletes - How to add behaviors that occur when a tool completes
work.
TAKINGACTIONATTHEENDOFTESTING
Test2::Manual::Tooling::Plugin::TestingDone - How to add behaviors that occur when testing is complete
(IE done_testing, or end of test).
TAKINGACTIONJUSTBEFOREEXIT
Test2::Manual::Tooling::Plugin::TestExit - How to safely add pre-exit behaviors.
See Also
Test2::Manual - Primary index of the manual.
Source
The source code repository for Test2-Manual can be found at https://github.com/Test-More/Test2-Suite/.
Tool Tutorials
FIRSTTOOL
Test2::Manual::Tooling::FirstTool - Introduction to writing tools by cloning ok().
MOVINGFROMTest::Builder
Test2::Manual::Tooling::TestBuilder - This section maps Test::Builder methods to Test2 concepts.
NESTINGTOOLS
Test2::Manual::Tooling::Nesting - How to call other tools from your tool.
TOOLSWITHSUBTESTS
Test2::Manual::Tooling::Subtest - How write tools that make use of subtests.
TESTINGYOURTESTTOOLS
Test2::Manual::Tooling::Testing - How to write tests for your test tools.
Where To Find Hooks And Apis
global API
Test2::API is the global API. This is primarily used by plugins that provide global behavior.
In hubs
Test2::Hub is the base class for all hubs. This is where hooks for manipulating events, or running
things at the end of testing live.
Writing A Simple Jsonl Formatter
Test2::Manual::Tooling::Formatter - How to write a custom formatter, in our case a JSONL formatter.
