也許這是由於我自己對聲納分析的誤解,但在組件層面,Sonar報告的代碼覆蓋率比看起來可能得到的要高得多在包級別的結果。 我可以將您的注意力集中在附加的屏幕截圖上... 請參閱:http://i.stack.imgur.com/yCnms.png 任何想法?聲納代碼覆蓋率分析不加起來
回答
的屏幕截圖僅示出了用於包裝
com.gfs.transportation.transprointegration.filewatcher
com.gfs.transportation.transprointegration.filewatcher.impl
代碼覆蓋如果用於以下組件的代碼覆蓋率100%
com.gfs.transportation.transprointegration
com.gfs.transportation
com.gfs
com
然後總覆蓋將是(87.9 + 89.2 + 100 + 100 + 100 + 100)/ 600 等於96.183%
我想如果一個軟件包沒有它的類,那麼這個軟件包的覆蓋率是100%
嗨Vimil - 謝謝 - 有道理你解釋它的方式,但不是我會如何預期它 – 2012-02-20 01:38:23
這是其他軟件包[截圖](http://i.stack.imgur.com/OQOqJ.png)包括但不在前一個屏幕上。 – 2012-02-21 01:10:00
我還是不明白爲什麼Sonar中的其他屏幕沒有顯示所有的軟件包。 – 2012-02-21 01:13:25
這完全取決於類的大小以及它們是如何有助於模塊的覆蓋範圍作爲一個整體
- 如果類具有10行的代碼,在90%的覆蓋率那麼就是9行 覆蓋
- 如果類B具有1000行的代碼,在60%的覆蓋率那麼 是600線覆蓋
的覆蓋整體是60.3%(一千〇一十分之六百〇九)
但如果
- 如果類A有10行的代碼,在60%的覆蓋率則認爲是6行覆蓋
- 如果B類有1000行的代碼,在90%的覆蓋率則認爲是900線覆蓋
現在覆蓋整體爲89.7%(一千○一十分之九百○六)
然後,你必須考慮到對filewatcher覆蓋範圍是否也包括filewatcher.impl的覆蓋度量 - 我懷疑它可能會做。
最後,你還沒有提到,如果你顯示的數字是分支/線或兩者的組合,在評論中提供的鏈接暗示可能,如果後者然後組合涉及開始使我的頭受傷。
嘿Shaun,謝謝你的回覆。如果您注意到......計算時總覆蓋範圍總是介於兩個極值之間(最低和最高)。在我的情況下,爲什麼總體覆蓋率遠遠超過這兩個軟件包的覆蓋範圍?即使代碼分支也不能解釋我所看到的。你能用我的情況解釋計算嗎? – 2012-02-17 14:37:31
[此屏幕截圖](http://i.stack.imgur.com/OQOqJ.png)顯示計算覆蓋範圍所需的信息,但它仍不起作用。首先,爲什麼問題屏幕截圖中顯示的屏幕上沒有顯示所有軟件包?其次,爲什麼報道仍然沒有加起來?我得到〜94。根據Sonar的數據,實際上我們的總覆蓋率達到了96.1%。 – 2012-02-17 15:38:59
覆蓋值本身並不僅僅使用線覆蓋(數字甚至四捨五入到小數點後1位沒有意義,除非涉及到另一個因素),但t/f分支覆蓋率也是如此,但是不顯示該數字,但複雜程度在20,那麼我認爲分支機構的數量大約是它的兩倍。至於爲什麼報道沒有顯示可能班上沒有可測量的代碼或沒有測試 - 我只有1/2的圖片。 – 2012-02-18 03:27:26
- 1. 聲納代碼覆蓋率:%代碼覆蓋率不一致
- 2. 代碼覆蓋率分析
- 3. 聲納分析後沒有填充代碼覆蓋範圍
- 4. 分析代碼覆蓋率消失
- 5. 聲納 - C代碼分析
- 6. 聲納沒有顯示代碼覆蓋
- 7. IT代碼覆蓋有聲納
- 8. 聲納與gallio和opencover,代碼覆蓋率:0%
- 9. 是否有與Scala相同的聲納級代碼覆蓋率?
- 10. (聲納與gallio和)opencover,代碼覆蓋率:0%
- 11. 聲納代碼覆蓋率和線路覆蓋有什麼區別
- 12. 飼養愛瑪覆蓋率聲納
- 13. 如何禁用聲納自6.2以來的代碼覆蓋
- 14. 代碼覆蓋不既不在聲納也不在Eclipse
- 15. 動態生成代碼的代碼覆蓋率,分析和性能分析
- 16. 代碼覆蓋率:.NET代碼覆蓋率和SonarQube VSTS集成
- 17. 代碼覆蓋率 - 哪個代碼覆蓋哪個代碼?
- 18. Android將單元測試覆蓋率添加到聲納中
- 19. 聲納 - 報告的代碼覆蓋率,但單元測試計數未報告
- 20. SonarQube 6.3,聲納掃描儀2.9和Maven-2的代碼覆蓋率
- 21. 差代碼覆蓋率
- 22. PHPUnit代碼覆蓋率0%
- 23. 代碼覆蓋率與SCCT
- 24. ESB代碼覆蓋率
- 25. 全部代碼覆蓋率
- 26. Xcode 8代碼覆蓋率
- 27. 爲Perl代碼覆蓋率
- 28. TDD和代碼覆蓋率
- 29. rspec的代碼覆蓋率
- 30. 代碼覆蓋率爲Android
聲納指標的計算在鏈接中解釋,請查看http://docs.codehaus.org/display/SONAR/Metric+definitions – 2012-02-16 22:55:45
Hey @SajanChandran我看到了這個頁面,但它沒有解釋如何計算代碼覆蓋率。 – 2012-02-17 14:24:53