2

私の質問は、SonarQube 5.3 API から値を返さない新しいコード カバレッジ メトリックにここに投稿された質問の続きです。

最近、new_coverage やその他の新しいメトリックを活用するために、Sonar 5.3 をロールアウトしました。しかし、数日分のコード分析を行った結果、Sonar が new_coverage メトリックを正しく計測していないことがわかりました。ただし、new_violations などを計測することはできます。

この状況はかなり定期的であり、いくつかの Java ベースのプロジェクトで発生しています。分析の実行後、Sonar は ncloc、new_violations などの変更を報告しますが、new_coverage の var2 と fvar2 の値は報告しません。URL https://internal.sonar.server.com/api/resources?resource=prj_key&format=json&metrics=ncloc,new_coverage&includealerts=true&includetrends=trueの 1 つのアプリケーションに対する応答の例を次に示します。

[ { "creationDate": "2016-04-06T15:51:29-0400", "date": "2016-06-20T21:48:27-0400", "description": "", "id": 6610, "key": "<PRJ_KEY>", "lname": "<PRJ_LNAME>", "name": "<PRJ_LNAME>", "p1": "previous_version", "p1d": "2016-06-06T02:21:39-0400", "p1p": "16.06.00-SNAPSHOT", "p2": "previous_analysis", "p2d": "2016-06-20T16:42:38-0400", "p2p": "2016-06-20", "p3": "days", "p3d": "2016-05-22T02:22:57-0400", "p3p": "30", "qualifier": "TRK", "scope": "PRJ", "uuid": "AVPtITChBmbOnKmhsXJi", "version": "16.06.01-SNAPSHOT", "msr": [ { "alert": null, "alert_text": null, "frmt_val": "41,589", "fvar1": "483", "fvar2": "9", "fvar3": "743", "key": "ncloc", "val": 41589.0, "var1": 483.0, "var2": 9.0, "var3": 743.0 }, { "alert": null, "alert_text": null, "frmt_val": "47.9%", "fvar1": "-0.4%", "fvar2": "0.0%", "fvar3": "-0.3%", "key": "coverage", "val": 47.9, "var1": -0.399999999999999, "var2": 0.0, "var3": -0.300000000000004 }, { "alert": "OK", "alert_text": null, "fvar1": "15.2%", "fvar3": "28.1%", "key": "new_coverage", "var1": 15.2317880794702, "var3": 28.1407035175879 } ] } ]

上記の応答でわかるように、以前の分析以降に変更されたコード行があります (これらの行はすべて機能コード内にあり、無視されていません。ただし、分析が行われたばかりであるにもかかわらず、new_coverage フィールドの var2 の値はありません。問題は API だけでなく、UI 側にもあります.いくつかのメトリクスの新しいカバレッジ メトリクスの「以前の分析以降の値」は見られませんが、他の新しいコード メトリクスと全体的なカバレッジは問題ありません.

4

1 に答える 1