You are viewing the version of this documentation from Perl 5.40.0-RC1. This is a development version of Perl.



Test::use::ok - Alternative to Test::More::use_ok


use ok 'Some::Module';


According to the Test::More documentation, it is recommended to run use_ok() inside a BEGIN block, so functions are exported at compile-time and prototypes are properly honored.

That is, instead of writing this:

use_ok( 'Some::Module' );
use_ok( 'Other::Module' );

One should write this:

BEGIN { use_ok( 'Some::Module' ); }
BEGIN { use_ok( 'Other::Module' ); }

However, people often either forget to add BEGIN, or mistakenly group use_ok with other tests in a single BEGIN block, which can create subtle differences in execution order.

With this module, simply change all use_ok in test scripts to use ok, and they will be executed at BEGIN time. The explicit space after use makes it clear that this is a single compile-time action.




Chad Granum <>

CC0 1.0 Universal

To the extent possible under law, 唐鳳 has waived all copyright and related or neighboring rights to Test::use::ok.

This work is published from Taiwan.