通过Maven surefire-report在汇总格式的单个文件中的单元测试类中的测试执行时间

通过Maven surefire-report在汇总格式的单个文件中的单元测试类中的测试执行时间,第1张

通过Maven surefire-report在汇总格式的单个文件中的单元测试类中的测试执行时间

maven-surefire-plugin
目前没有让你这样做。它将所有结果写入单独的文件中。如果您觉得这是缺少的功能,则可以在其问题跟踪器中创建功能请求。

但是,您可以使用一些Linux命令将输出转换为所需的输出。以下是一些命令,可将单独的XML文件转换为看起来像您想要的文件:

grep testcase target/surefire-reports/TEST-*.xml |  sed 's/.* name="(.*)" classname="(.*)" time="(.*)".*/2#1() - 3ms/g' |  sort -n -k 3 > output.txt

更新 :数值排序存在分数位数变化的问题。使用

awk
下面的版本来解决这个问题。


同样的事情可以用

awk
更短,更隐蔽的方式完成:

grep -h testcase target/surefire-reports/TEST-*.xml |  awk -F '"' '{printf("%s#%s() - %.3fmsn", , , ); }' |  sort -n -k 3 > output.txt

生成surefire报告后,必须从maven项目的顶级目录中执行这些命令。

如果您有多模块项目,请改用以下方法:

find . -name TEST-*.xml -exec grep -h testcase {} ; |  awk -F '"' '{printf("%s#%s() - %.3fmsn", , , ); }' |  sort -n -k 3 > output.txt

结果文件为,

output.txt
并包含以下格式的行:

<classname>#<methodname>() - <time>ms

结果按消耗的时间排序。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5430116.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存