Thi*_*ilo 9 perl automated-tests cpan
当我make test使用CPAN模块具有的常规测试工具运行时,它将只输出一个简短的摘要(如果一切顺利).
t/000_basic.t .......................... ok
t/001_db_handle.t ...................... ok
t/002_dr_handle.t ...................... ok
t/003_db_can_connect.t ................. ok
... snip ...
All tests successful.
Files=30, Tests=606, 2 wallclock secs
Result: PASS
Run Code Online (Sandbox Code Playgroud)
如果我单独运行测试,它们会输出更详细的信息.
1..7
ok 1 - use DBIx::ProcedureCall::PostgreSQL;
ok 2 - simple call to current_time
ok 3 - call to power() with positional parameters
ok 4 - call to power() using the run() interface
ok 5 - call to setseed with a named parameter
ok 6 - call a table function
ok 7 - call a table function and fetch
Run Code Online (Sandbox Code Playgroud)
如何在这种详细模式下运行所有测试?有什么东西可以传递给我make test吗?
cjm*_*cjm 14
该参考ExtUtils :: MakeMaker的文档在解释这种化妆测试部分:
make test TEST_VERBOSE=1
Run Code Online (Sandbox Code Playgroud)
如果发行版使用Module :: Build,那就有点不同了:
./Build test verbose=1
Run Code Online (Sandbox Code Playgroud)
您还可以使用Test-Harness附带的prove命令:
prove -bv
Run Code Online (Sandbox Code Playgroud)
(或者prove --blib --verbose,如果你喜欢长选项.)这个命令是一个有点不同,因为它并没有首先构建模块.该--blib选项使它查找由make或创建的已构建但已卸载的模块./Build,但如果您在更改某些内容后忘记重建模块,它将针对先前构建的副本运行测试.如果您还没有构建模块,它将测试安装的模块版本.
证明还允许您只运行特定的测试或测试:
prove -bv t/failing.t
Run Code Online (Sandbox Code Playgroud)
您还可以使用以下prove命令:
prove --blib --verbose
Run Code Online (Sandbox Code Playgroud)
来自解压缩模块的顶级目录.--blib包含已构建但未安装的模块分发所需的目录.