定制的声纳Qube分析报告

时间:2014-05-15 13:00:37

标签: sonarqube

我正在尝试从声纳生成自定义分析报告。我正在使用声纳-ws-client。我的代码是:

    Sonar sonar = new Sonar(new HttpClient4Connector(new Host(url, login, password)));

    Resource JunitTestCaseExample = sonar.find(ResourceQuery.createForMetrics("JunitTestCaseExample:JunitTestCaseExample", "critical_violations", 
            "major_violations", "minor_violations", "info_violations", "tests", "blocker_violations", "statements","coverage","uncovered_lines","lines",
            "skipped_tests","test_failures", "test_errors", "test_success_density", "new_coverage","overall_coverage"));

    Measure statements = JunitTestCaseExample.getMeasure("statements");
    System.out.println("statements : " + statements.getMetricKey() + " === " + statements.getFormattedValue());
    System.out.println(statements.getVariation1());

我能够获得大部分值,但statements.getVariation1()始终返回null。 有没有办法获得7天,15天和30天的变量值?

1 个答案:

答案 0 :(得分:0)

它不是标准,但您可以从声纳Db中获取所需数据,因为它无法通过网络服务自定义声纳Qube分析报告获取。

第1步 在project_id的帮助下从快照中获取period_param 从这里你可以设法获得你在问题中提到的变异期

2) - 执行此查询,它将为您提供所有变体,之后您可以将您的逻辑选择为您想要的 从项目proj inner中选择不同的proj.name NAME_OF_PROJ,metric.name metric_name,metric.description描述,projdesc.value值,projdesc.variation_value_1,projdesc.variation_value_2,projdesc.variation_value_3,projdesc.variation_value_4,projdesc.variation_value_5,snap.created_at CREATED_DATE在snap.project_id = proj.id内部联接"上加入快照快照+"(从快照snap2中选择max(snap2.id)作为id,其中snap2.project_id在(" + projectId +")GROUP BY snap2.project_id)中作为Lookup.id = snap上的查找.id inner join project_measures projdesc on projdesc.snapshot_id = snap.id inner join metrics metric on projdesc.metric_id = metric.id其中metric.id介于' 1'和" + metric_id_Count +'

希望它对你有所帮助。 再次记得提及声纳组不是标准。