table of contents
        
      
      
    | Test2::Bundle::More(3pm) | Perl Programmers Reference Guide | Test2::Bundle::More(3pm) | 
NAME¶
Test2::Bundle::More - ALMOST a drop-in replacement for Test::More.
DESCRIPTION¶
This bundle is intended to be a (mostly) drop-in replacement for Test::More. See "KEY DIFFERENCES FROM Test::More" for details.
SYNOPSIS¶
    use Test2::Bundle::More;
    ok(1, "pass");
    ...
    done_testing;
PLUGINS¶
This loads Test2::Plugin::ExitSummary.
TOOLS¶
These are from Test2::Tools::Basic. See Test2::Tools::Basic for details.
- ok($bool, $name)
 - pass($name)
 - fail($name)
 - skip($why, $count)
 - $todo = todo($why)
 - diag($message)
 - note($message)
 - plan($count)
 - skip_all($why)
 - done_testing()
 - BAIL_OUT($why)
 
These are from Test2::Tools::ClassicCompare. See Test2::Tools::ClassicCompare for details.
- is($got, $want, $name)
 - isnt($got, $donotwant, $name)
 - like($got, qr/match/, $name)
 - unlike($got, qr/mismatch/, $name)
 - is_deeply($got, $want, "Deep compare")
 - cmp_ok($got, $op, $want, $name)
 
These are from Test2::Tools::Class. See Test2::Tools::Class for details.
This is from Test2::Tools::Subtest. It is called subtest_streamed() in that package.
KEY DIFFERENCES FROM Test::More¶
- You cannot plan at import.
 - THIS WILL NOT WORK:
    
    
use Test2::Bundle::More tests => 5;Instead you must plan in a separate statement:
use Test2::Bundle::More; plan 5; - You have three subs imported for use in planning
 - Use plan($count), skip_all($reason), or done_testing() for your planning.
 - isa_ok accepts different arguments
 - "isa_ok" in Test::More was:
    
    
isa_ok($thing, $isa, $alt_thing_name);This was very inconsistent with tools like "can_ok($thing, @subs)".
In Test2::Bundle::More, isa_ok() takes a $thing and a list of @isa.
isa_ok($thing, $class1, $class2, ...); 
THESE FUNCTIONS AND VARIABLES HAVE BEEN REMOVED¶
- $TODO
 - See todo().
 - use_ok()
 - require_ok()
 - These are not necessary. Use "use" and "require" directly. If there is an error loading the module the test will catch the error and fail.
 - todo_skip()
 - Not necessary.
 - eq_array()
 - eq_hash()
 - eq_set()
 - Discouraged in Test::More.
 - explain()
 - This started a fight between Test developers, who may now each write their own implementations in Test2. (See explain in Test::Most vs Test::More. Hint: Test::Most wrote it first, then Test::More added it, but broke compatibility).
 - new_ok()
 - Not necessary.
 
SOURCE¶
The source code repository for Test2-Suite can be found at https://github.com/Test-More/test-more/.
MAINTAINERS¶
AUTHORS¶
COPYRIGHT¶
Copyright 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.
| 2025-07-11 | perl v5.42.0 |