2014-05-15 78 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