【发布时间】:2019-01-25 02:27:17
【问题描述】:
如何使用 Perl 将生成的文本文件转换为 Junit 格式(XML)
我生成了一个文本文件,格式为:
Tests started on Fri Oct 19 14:11:35 2018
Test File Comparison Result
========= =================
abc.msg FAILED
aa.msg PASSED
bb.msg TO BE VALIDATED
Tests finished on Fri Oct 19 14:12:01 2018
预期的 JUnit 格式:
请在附件中找到预期的 xml 格式的片段
我想将上面的文本文件从 Perl 脚本生成后转换为使用 Perl 脚本的 XML 文件。
任何帮助将不胜感激。提前致谢!!
【问题讨论】:
-
你有什么问题?
-
您应该将预期的输出放在您的问题中,格式正确,以便阅读。
-
@randomguy 不管怎样,根据上面的 junit5,我创建了一个补丁 (gist.github.com/ernix/c692ecb3233d60947d19cac10ec9fa2a) 来解析以 TAP 格式 (testanything.org/tap-specification.html#skipping-tests) 描述的 SKIP 指令。请修改 custm2tap.pl 解析
TO BE VALIDATED并将['ok' => '# SKIP $msg'];推送到@t,修补TAP::Formatter::JUnit的tap2junit命令现在可以正确解析 SKIP 指令。 -
@randomguy 您需要安装
TAP::Formatter::JUnit的补丁版本,TAP::Formatter::JUnit的原始版本(0.11)不解析 SKIP/TODO 指令。您还需要将['ok' => '# SKIP $msg']更改为['ok' => "$msg # SKIP"]以满足您的期望。而且我们非常需要生成 XML 规范(XSD),而不是示例。你在哪里使用你的 JUnit 报告?詹金斯?
标签: xml perl text junit perlscript