这是可以使用我们的多个免费在线工作站之一(例如 Ubuntu Online、Fedora Online、Windows 在线仿真器或 MAC OS 在线仿真器)在 OnWorks 免费托管服务提供商中运行的命令provep
程序:
您的姓名
证明 - 通过 TAP 工具运行测试。
用法
证明 [选项] [文件或目录]
配置
布尔选项:
-v, --verbose 打印所有测试行。
-l, --lib 将“lib”添加到测试路径 (-Ilib)。
-b, --blib 将 'blib/lib' 和 'blib/arch' 添加到路径中
你的测试
-s, --shuffle 以随机顺序运行测试。
-c, --color 彩色测试输出(默认)。
--nocolor 不要对输出进行颜色测试。
--count 在不详细时显示 X/Y 测试计数
(默认)
--nocount 禁用 X/Y 测试计数。
-D --dry 空运行。 显示本来可以运行的测试。
-f, --failures 显示失败的测试。
-o, --comments 显示评论。
--ignore-exit 忽略测试脚本的退出状态。
-m, --merge 将测试脚本的 STDERR 与其 STDOUT 合并。
-r, --recurse 递归下降到目录中。
--reverse 以相反的顺序运行测试。
-q, --quiet 在运行测试时抑制一些测试输出。
-Q, --QUIET 只打印汇总结果。
-p, --parse 显示 TAP 解析错误的完整列表(如果有)。
--directives 仅显示 TODO 或 SKIP 指令的结果。
--timer 每次测试后打印经过的时间。
--trap 陷阱 Ctrl-C 并在中断时打印摘要。
--normalize 在详细输出中规范化 TAP 输出
-T 启用污染检查。
-t 启用污染警告。
-W 启用致命警告。
-w 启用警告。
-h, --help 显示此帮助
-?, 显示此帮助
-V, --version 显示版本
-H, --man 更长的联机帮助证明
--norc 不处理默认的 .proverc
带参数的选项:
-I 要包含的库路径。
-P 加载插件(搜索 App::Prove::Plugin::*。)
-M 加载一个模块。
-e, --exec 解释器运行测试('' 为编译
测试。)
--ext 设置测试扩展名(默认'.t')
--harness 定义要使用的测试工具。 参见 TAP::Harness。
--formatter 要使用的结果格式化程序。 请参阅格式化程序。
--source 加载和/或配置 SourceHandler。 看
源处理程序。
-a, --archive out.tgz 将生成的 TAP 存储在存档文件中。
-j, --jobs N 并行运行 N 个测试作业(尝试 9。)
--state=opts 控制证明的持久状态。
--rc=rcfile 处理来自 rcfile 的选项
--rules 并行与顺序处理的规则。
附注
〜/.proverc / ./.省
If 〜/.proverc or ./.省 存在它们将被读取并处理它们包含的任何选项
在命令行选项之前。 中的选项 .proverc 以相同的方式指定
命令行选项:
#.proverc
--state=热、快速、保存
-j9
可以使用“--rc”选项指定其他选项文件。 默认选项文件
“--norc”选项禁用处理。
在 Windows 和 VMS 下,选项文件被命名为 _普罗旺斯 而非 .proverc 并被寻求
仅在当前目录中。
阅读 在 “标准输入”
如果文件中有测试列表(或 URL,或任何其他要测试的内容),则
可以使用“-”将它们添加到您的测试中:
证明 - < my_list_of_things_to_test.txt
请参阅此发行版的“examples”目录中的“README”。
默认 测试 目录
如果没有提供文件或目录,“证明”会查找与模式匹配的所有文件
“t/*.t”。
有色 测试 输出
使用 TAP::Formatter::Color 的彩色测试输出是默认值,但如果输出不是
终端,颜色被禁用。 您可以通过添加“--color”开关来覆盖它。
颜色支持需要 Term::ANSIColor 在类 Unix 平台和 Win32::Console
视窗。 如果没有安装必要的模块,彩色输出将不可用。
Exit 退出 代码
如果测试失败,“证明”将以非零状态退出。
参数 至 检测
可以为测试提供参数。 这样做将它们与证明自己的分开
与 arisdottle 的争论,'::'。 例如
证明 -vt/mytest.t :: --url http://example.com
会运行 t/mytest.t 使用选项 '--url http://example.com'。 当运行多个
测试他们每个人都会收到相同的参数。
“--exec”
通常,您只需传递 Perl 测试列表,工具就会知道如何执行
他们。 但是,如果您的测试不是用 Perl 编写的,或者您希望调用所有测试
完全相同的方式,使用“-e”或“--exec”开关:
证明 --exec '/usr/bin/红宝石 -w' t/
证明 --exec '/usr/bin/perl -Tw -mstrict -Ilib' t/
证明 --exec '/path/to/my/customer/exec'
“ - 合并”
如果您需要确保您的诊断以正确的顺序显示
测试结果您可以使用“--merge”选项将测试脚本的 STDERR 合并到它们的
标准输出。
这保证了 STDOUT(测试结果出现的地方)和 STDERR(测试结果出现的地方)
诊断出现)将保持同步。 线束将显示您的测试的任何诊断
在 STDERR 上发射。
警告:这有点混乱。 特别要注意的是,如果出现在
STDERR 看起来像测试工具会混淆的测试结果。 仅使用此选项
如果您了解后果并能承受风险。
“ - 陷阱”
“--trap”选项将尝试在测试运行期间捕获 SIGINT (Ctrl-C) 并显示
即使运行中断,测试摘要
“ - 状态”
您可以要求“证明”记住先前测试运行的状态并选择和/或订购
基于该保存状态运行的测试。
“--state”开关需要一个参数,该参数必须是一个逗号分隔的列表,或者
更多以下选项。
“最后的”
运行与上次保存状态时相同的测试。 这使得有可能,对于
例如,重新创建混洗测试的顺序。
# 以随机顺序运行所有测试
$ 证明 -b --state=save --shuffle
# 以相同的顺序再次运行它们
$ 证明 -b --state=last
“失败的”
只运行上次运行失败的测试。
# 运行所有测试
$ 证明 -b --state=save
# 运行失败
$ 证明 -b --state=failed
如果您还指定了“保存”选项,则新通过的测试将被排除在
随后的运行。
# 重复直到不再失败
$ proof -b --state=failed,save
“通过”
只运行上次通过的测试。 有助于确保没有新问题
已经介绍。
“全部”
按正常顺序运行所有测试。 可以指定多个选项,以便运行所有测试
首先是上次的失败:
$ proof -b --state=failed,all,save
“热的”
首先运行最近失败的测试。 每次测试的最后一次失败时间为
存储。 “热”选项导致测试以最近失败的顺序运行。
$ 证明 -b --state=hot,save
不会选择从未失败的测试。 以最多的方式运行所有测试
最近第一次使用失败
$ proof -b --state=hot,all,save
也可以指定这种选项组合
$ 证明 -b --state=adrian
“去做”
使用 todos 运行任何测试。
“减缓”
以最慢到最快的顺序运行测试。 这与“-j”结合使用很有用
并行测试开关以确保最慢的测试首先开始运行。
$ 证明 -b --state=slow -j9
“快速地”
以最快到最慢的顺序运行测试测试。
“新”
根据测试的修改时间以最新到最旧的顺序运行测试
脚本。
“老的”
按从旧到新的顺序运行测试。
“新鲜的”
运行自上次测试运行以来修改过的那些测试脚本。
“节省”
退出时保存状态。 状态存储在一个名为 。证明 (_证明 在Windows上
和 VMS)在当前目录中。
“--state”开关可以多次使用。
$ proof -b --state=hot --state=all,save
--规则
“--rules”选项用于控制按顺序运行哪些测试以及运行哪些测试
同时,如果指定了“--jobs”选项。 该选项可以指定多个
时间,顺序很重要。
最实际的用途可能是指定某些测试不是“并行就绪”的。
由于使用 --rules 提及文件不会使其被选择作为测试运行,因此您
可以在您的 .proverc 文件中“设置和忘记”一些规则首选项。 然后你就可以
最大限度地利用并行测试的性能优势,而一些
异常仍然并行运行。
--规则 例子
# 所有测试都允许并行运行,除了以“p”开头的那些
--rules='seq=t/p*.t' --rules='par=**'
# 所有测试必须按顺序运行,除了那些以“p”开头的测试,应该并行运行
--rules='par=t/p*.t'
--规则 分辨率
· 默认情况下,所有测试都可以并行运行。 指定任何你自己的
规则删除了这一点。
·“第一场比赛获胜”。 与测试匹配的第一条规则将适用。
· 任何不符合规则的测试将在运行结束时按顺序运行。
· 规则的存在并不意味着选择测试。 您仍然必须指定
要运行的测试。
· 指定允许测试并行运行的规则不会使它们在
平行线。 您仍然需要在 Harness 对象中指定并行“作业”的数量。
--规则 球形 模式 匹配
我们为 --rules 实现了我们自己的全局样式模式匹配。 这是支持的
图案:
** 是路径名中任意数量的字符,包括 /
* 是文件名/目录名中的零个或多个字符
? 正好是文件名/目录名中的一个字符
{foo,bar,baz} 是 foo、bar 或 baz 中的任何一个。
\ 是一个转义字符
更多 高级 规格 并行 vs 序列 运行 定位、竞价/采购和分析/优化数字媒体采购,但算法只不过是解决问题的操作和规则。
如果您需要对并行和顺序运行的内容进行更高级的管理,请参阅
TAP::Harness 和 TAP::Parser::Scheduler 中的相关“规则”文档。 如果是什么
可能直接通过“证明”是不够的,您可以编写自己的线束来
直接访问这些功能。
@INC
证明引入了“传递给运行证明的 perl 的选项”和
“选项传递给运行测试的 perl”; 这种区别是有意为之。 就这样
运行测试的 perl 以默认的 @INC 开头。 附加库目录
可以通过“PERL5LIB”环境变量,通过“PERL5OPT”中的 -Ifoo 或通过
“-Ilib”选项 证明.
污点 时尚
通常,当 Perl 程序在污点模式下运行时,“PERL5LIB”的内容
环境变量不会出现在@INC 中。
因为在测试过程中经常使用“PERL5LIB”将构建目录添加到@INC证明
将在“PERL5LIB”中找到的任何目录的名称作为 -I 开关传递。 净效应
这是“PERL5LIB”即使在证明在污点模式下运行时也受到尊重。
格式化程序
您可以加载自定义 TAP::Parser::Formatter:
证明 --formatter MyFormatter
源 搬运工
您可以加载自定义 TAP::Parser::SourceHandlers,以更改解析器解释的方式
特别 来源 的 TAP。
证明 --source MyHandler --source YetAnother t
如果要向源提供配置,可以使用:
证明 --source MyCustom \
--source Perl --perl-option 'foo=bar baz' --perl-option avg=0.278 \
--source 文件 --file-option extensions=.txt --file-option extensions=.tmp t
--source pgTAP --pgtap-option pset=format=html --pgtap-option pset=border=2
每个“--$source-option”选项必须指定一个由“=”分隔的键/值对。 如果
选项可以取多个值,只需多次指定,就像“extensions=”一样
上面的例子。 如果该选项应该是散列引用,则将该值指定为秒
以“=”分隔的对,如上面的“pset=”示例(使用反斜杠转义“=”)。
所有“--sources”组合成一个散列,并传递给 TAP::Harness 的“sources”中的“new”
参数。
有关如何将配置传递给的更多详细信息,请参阅 TAP::Parser::IteratorFactory
源处理程序.
PLUGINS
可以使用“-P”加载插件插入” 语法,例如:
证明 -PMyPlugin
这将搜索名为“App::Prove::Plugin::MyPlugin”的模块,或者失败,
“我的插件”。 如果找不到插件,“证明”会抱怨并退出。
您可以通过将“=arg1,arg2,etc”附加到插件名称来将参数传递给您的插件:
证明 -PMyPlugin=fou,du,fafa
请查看各个插件文档以获取更多详细信息。
可提供 插件
有关可用插件的最新列表,请查看 CPAN:
<http://search.cpan.org/search?query=App%3A%3AProve+Plugin>
撰稿 插件
请参阅 App::Prove 中的“插件”。
使用 onworks.net 服务在线使用provep