2014-05-15 76 views
1

我试图从声纳生成定制分析报告。我正在使用sonar-ws-client。我的代码是:定制声纳Qube分析报告

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天的变化值?

+0

感谢没有重复的问题:http://sonarqube.15.x6.nabble.com/Customised-Sonar-Qube-Analysis-Report-td5024916.html –

回答

0

这不是一个标准,但你可以从声纳Db获取所需的数据,因为它不能通过网络服务定制声纳Qube分析报告。

第1步 - 从PROJECT_ID 从这个帮助快照抓取period_param你能设法得到变化周期,你在你的问题

2)-execute这个查询更不用说了,它会给你的所有变化,之后你可以把你的逻辑选择你想要的东西 select distinct 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。变量值_4,projdesc.variation_value_5,snap.created_at项目中的CREATED_DATE proj内部连接快照捕捉snap.project_id = proj.id内部连接“+”(选择max(snap2.id)作为id从快照snap2其中snap2.project_id在(“+ projectId +”)GROUP BY snap2.project_id)作为lookup on Lookup.id = snap.id内部连接project_measures projdesc on projdesc.snapshot_id = snap.id内部连接度量标准projdesc.metric_id = metric.id其中metric.id在'1'和'+ metric_id_Count +'之间

希望它可以帮助你。 再次提起声纳集团并不是一个标准。

+0

嗨艾米特,非常感谢您的帮助。它根据我的需要工作。 –

+0

嘿Kuldeep,如果你需要的信息,你可以检查我的博客http://pathakamit783.blogspot.in/2014/05/get-data-variation-of-sonar-to-create.html – Amit