我可以获得maven执行的测试用例总数吗?

时间:2016-12-09 09:11:15

标签: java maven

我有一个maven项目,其中有几个子项目。每个子项目都有自己的测试用例,所有子项目都运行良好。我想知道在父项目上执行的测试用例的数量。

无论如何,我可以获得所有执行的测试用例的详细信息吗?即使测试用例的数量也很好。

请分享您的宝贵意见。

3 个答案:

答案 0 :(得分:2)

如果您想将其作为一个关闭,您可以先将maven构建输出到日志文件中:

     SELECT 
(CASE
    when DET_ledger = 'NL' and det_nominaldr = ''  then det_nominalcr
    when DET_ledger = 'NL' and det_nominalcr = ''  then det_nominaldr
    else  det_analysis
    end ) as Code,
DET_YEAR,
DET_PERIODNUMBR,
sum(CASE
    when DET_ledger = 'NL' and det_nominaldr = ''  then -1* det_nett
    when DET_ledger = 'PL' and det_type = 'CRN'   then -1* det_nett 
        else  det_nett
    end) as Net
FROM SL_PL_NL_DETAIL
where det_year = 'C'
and det_periodnumbr = '07'
and (det_nominalcr like '617%' or det_nominaldr like '617%')
and det_primary not in 
    (select det_primary
     from sl_pl_nl_detail
     where det_ledger in ('PL','SL')
     and det_batch_flag = 1)
group by det_nominaldr, det_nominalcr,  det_ledger, det_year, 
      det_periodnumbr, det_analysis, det_type

然后,你可以运行一个bash one liner来总结运行的测试次数:

mvn clean verify > maven_build.out

这将从日志中提取每个摘要(重复时)的所有“测试运行”,旁边的数字,并将其相加。

你需要unix或cygwin

答案 1 :(得分:0)

可能你需要在父pom中配置一个监听器,但我不确定它会有多大用处。更多信息here

最佳解决方案是在像Hudson这样的持续集成工具中配置构建作业。它可以为您提供完整的信息。

答案 2 :(得分:0)

您可以执行以下简单的bash脚本:

mvn test | egrep "^Tests run: [0-9]+, Failures: [0-9]+, Errors: [0-9]+, Skipped: [0-9]+$" | egrep -o '[0-9]+' | awk '{n += $1}; END{print n}'

它调用Maven运行测试套件,并将输出重定向到grep以选择测试执行结果。然后,awk计算已执行测试的总数并将结果打印到标准输出中。