Manual Reference Pages - TEST2 (3)
Test2 - Framework for writing test tools that all work together.
This is an experimental release. Using this right now is not recommended.
Test2 is a new testing framework produced by forking Test::Builder,
completely refactoring it, adding many new features and capabilities.
If you are interested in writing tests using new tools then you should look at
If you are interested in writing new tools you should take a look at
This namespace is for sets of tools. Modules in this namespace should export
tools like ok() and is(). Most things written for Test2 should go here.
Modules in this namespace <B>MUST NOTB> export subs from other tools. See the
Test2::Bundle:: namespace if you want to do that.
This namespace is for plugins. Plugins are modules that change or enhance the
behavior of Test2. An example of a plugin is a module that sets the encoding to
utf8 globally. Another example is a module that causes a bail-out event after
the first test failure.
This namespace is for bundles of tools and plugins. Loading one of these may
load multiple tools and plugins. Modules in this namespace should not implement
tools directly. In general modules in this namespace should load tools and
plugins, then re-export things into the consumers namespace.
This namespace is for modules that cause a test to be skipped when conditions
do not allow it to run. Examples would be modules that skip the test on older
perls, or when non-essential modules have not been installed.
Formatters live under this namespace. Test2::Formatter::TAP is the only
formatter currently. It is acceptible for third party distributions to create
new formatters under this namespace.
Events live under this namespace. It is considered acceptible for third party
distributions to add new event types in this namespace.
Hub subclasses (and some hub utility objects) live under this namespace. It is
perfectly reasonable for third party distributions to add new hub subclasses in
The IPC subsystem lives in this namespace. There are not many good reasons to
add anything to this namespace, with exception of IPC drivers.
IPC drivers live in this namespace. It is fine to create new IPC drivers and to
put them in this namespace.
This namespace is for general utilities used by testing tools. Please be
considerate when adding new modules to this namespace.
This is for Test2 API and related packages.
The Test2:: namespace is intended for extentions and frameworks. Tools,
Plugins, etc should not go directly into this namespace. However extentions
that are used to build tools and plugins may go here.
In short: If the module exports anything that should be run directly by a test
script it should probably NOT go directly into Test2::XXX.
Test2::API - Primary API functions.
Test2::API::Context - Detailed documentation of the context object.
Test2::IPC - The IPC system used for threading/fork support.
Test2::Formatter - Formatters such as TAP live here.
Test2::Event - Events live in this namespace.
Test2::Hub - All events eventually funnel through a hub. Custom hubs are how
intercept() and run_subtest() are implemented.
The source code repository for Test2 can be found at
Copyright 2015 Chad Granum <email@example.com>.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
|perl v5.20.3 ||TEST2 (3) ||2016-04-01 |
Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.