1. 程式人生 > >對於用Powermock編寫的測試用例,sonar中單元測試覆蓋率統計不正確的問題

對於用Powermock編寫的測試用例,sonar中單元測試覆蓋率統計不正確的問題

用PowerMock寫的單元測試用例,sonar中覆蓋率顯示問題

  • sonar中沒有覆蓋率的顯示問題
  • sonar中覆蓋率顯示不正確
  • sonar中單元測試用例個數不正確問題

sonar中沒有覆蓋率的顯示問題

  • pom檔案中jacoco-maven-plugin配置不正確,做了如下配置,sonar中有了覆蓋率的顯示

         <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.7.9</version>
                <executions>
                    <execution>
                        <id>default-prepare-agent</id>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>default-prepare-agent-integration</id>
                        <goals>
                            <goal>prepare-agent-integration</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>default-report</id>
                        <goals>
                            <goal>report</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>default-report-integration</id>
                        <goals>
                            <goal>report-integration</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>default-check</id>
                        <goals>
                            <goal>check</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <rule>
                                    <element>BUNDLE</element>
                                    <limits>
                                        <limit>
                                            <counter>COMPLEXITY</counter>
                                            <value>COVEREDRATIO</value>
                                            <minimum>0.0</minimum>
                                        </limit>
                                    </limits>
                                </rule>
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
    

sonar中覆蓋率顯示不正確

  • sonar中覆蓋率的統計為0.0%1

PowerMock的版本從1.6.3改為1.6.6,覆蓋率從0.0%變為有正常資料

sonar中統計的單元測試個數不正確

單元測試用例中多了很多名為setUp和tearDown的測試用例,按照正常的來說,這個函式不應包含在測試用例裡面,報錯如下:

    Error Message
    The class xx.xx.xx.xx.xx not prepared for test. To prepare this class, add class to the '@PrepareForTest' annotation. In case if you don't use this annotation, add the annotation on class or  method level.  

    Stacktrace
    org.powermock.api.mockito.ClassNotPreparedException: 
    The class xx.xx.xx.xx.xx not prepared for test.
    To prepare this class, add class to the '@PrepareForTest' annotation.
    In case if you don't use this annotation, add the annotation on class or  method level. 

最後在@PrepareForTest()中添加了這個類之後,單元測試個數統計正確

    @Test (groups = {"UT"})
    @PrepareForTest({ClassName1.class,ClassName2.class})
    @PowerMockIgnore({""})

相關推薦

對於Powermock編寫試用sonar單元測試覆蓋率統計正確的問題

用PowerMock寫的單元測試用例,sonar中覆蓋率顯示問題 sonar中沒有覆蓋率的顯示問題 sonar中覆蓋率顯示不正確 sonar中單元測試用例個數不正確問題 sonar中沒有覆蓋率的顯示問題 pom檔案中jacoco-maven-

如何根據需求分析文檔編寫試用

編寫測試用例從拿到需求文檔不要立馬開始著手寫測試用例,需要仔細推敲整理需求,畫出系統級、模塊內流程圖,並找出各種測試點,等對需求進行了頭腦風暴般的整理之後,此時已對測試系統的功能很清楚了,再著手開始寫測試用例。那麽編寫測試用例的總體思路是什麽呢?1、整理分析需求文檔仔細將需求文檔閱讀一遍,記錄不明白的地方及關

yaf框架編寫試用

div testin auto 單元測試 invoke ica oot name phpunit https://phpunit.de/manual/current/zh_cn/phpunit-book.html phpunit單元測試中文文檔 目錄結構: test ├──

如何編寫試用

核心 選擇 自己的 系統 推斷 class 業務流程 等價類 1-1 筆記=重點+自己總結+自己的想法+例子+自己動腦+PPT之外的做記錄 1、什麽是測試用例 測試用例(TestCase)是為項目需求而編制的一組測試輸入、執行條件以及預期結果,以便測試某個程序是否滿足客戶需

如何使用判定表法編寫試用

判定表法是因果圖法的簡化,只是省略了因果圖法中的畫圖過程,其餘步驟一樣,今天我就一下一則案例描述判定表法如何編寫測試用例。 此案例如下: 有一個飲料自動售貨機(處理單價為5角錢硬幣)的控制處理軟體,它的軟體規格說明有 1.若投入5角錢的硬幣,按下“橙汁”或“啤酒

Android之編寫試用

https://www.cnblogs.com/guop/p/5066400.html 測試是軟體工程中一個非常重要的環節,而測試用例又可以顯著地提高測試的效率和準確性。測試用例其實就是一段普通的程式程式碼,通常是帶有期望的執行結果的,測試者可以根據最終的執行結果來判斷程式是否能正常工作。

使用xmind編寫試用

XMind 是一款非常實用的商業思維導圖軟體,應用全球最先進的Eclipse RCP 軟體架構,全力打造易用、高效的視覺化思維軟體,強調軟體的可擴充套件、跨平臺、穩定性和效能,致力於使用先進的軟體技

軟體測試-編寫試用

常見的用例編寫方法如下:一、需求轉化法根據需求轉化為基本功能測試點二、等價類1、等價類:程式的輸入域劃分為若干部分,每個部分中選取少數有代表性的資料作為測試用例,每一類的代表性資料在測試中的作用等價於這一類的其它值;從所有可能的輸入中努力找出某個小的子集,我們要找的子集是正確

Android 編寫試用

android 程式碼塊測試是軟體工程中一個非常重要的環節,而測試用例又可以顯著地提高測試的效率和準確性。測試用例其實就是一段普通的程式程式碼,通常是帶有期望的執行結果的,測試者可以根據最終的執行結果來判斷程式是否能正常工作。 1、在專案中建立一個包用於寫測試

laravel 編寫試用

之前錯誤認為程式編寫完成後測試專案直接手工測試即可,編寫測試用例只是花費時間,沒有多大的用處。 那為什麼要寫單元/功能測試? 手工測試存在測試時間長還會漏測,專案越龐大,耗費的時間越多,漏測的可能性越大。比如你的某個功能程式碼存在複用,在依次功能修改後當前功能塊正常,卻漏

IP地址屬地查詢試用涵蓋31個省會和3個運營商

編寫的IP地址屬地查詢的程式碼測試用的,參考了網上的一份用例表,並做了修改:只保留省會,對過時、不準確、缺項的IP地址進行了修正、補充。 電信 聯通 移動 北京 220.181.22.1 202.96.18.1 221.130.33.1 上

怎樣開源自動化測試平臺LuckyFrame編寫介面自動化試用

該自動化平臺分成兩部分,web端負責測試用例編寫及用例排程等.客戶端用於具體執行用例. 客戶端和伺服器端以及mysql資料庫的安裝和配置請參考官網 http://www.luckyframe.cn/book/yhsc/syschyy-24.html 一、客戶端的配置工作 1.客戶

根據接口文檔的入參生成自動化測試的異常試用

alt cas system com ext brush pri tle char @Test public void TestapiVar() { List<ApiCaseBean> list = apiCaseService.

Tcl腳本調高層API實現儀表使用和主機創建配置的自己主動化試用

sub ret eat ati 包含 lin name ref config #設置Chassis的基本參數,包含IP地址。port的數量等等 set chassisAddr 10.132.238.190 set islot 1 set portList {11 12

編寫一個簡單的單元試用

ide bsp span log 加減乘除 self teardown __main__ str 開發一個簡單的計算器,用於計算兩個數的加減乘除,示例: 1 class Calculator(): 2 ‘‘‘實現簡單的加減乘除‘‘‘ 3 def _

接口測試基礎五-使用python+requests編寫接口試用

基礎 div 返回結果 pan 返回 結果 strong 什麽 用例 好了,有了前幾章的的基礎,寫下來我把前面的基礎整合一下,來一個實際的接口測試練習吧。 接口測試流程 1.拿到接口的URL地址 2.查看接口是用什麽方式發送 3.添加請求頭、請求體 4.發送查看返回結果,

手機測試-設置試用

blog 網絡數 自動鎖定 空間 software 非默認 來電界面 操作 時間格式 Software Test Case ID 功能描述 操作步驟 預期結果 備註 設置窗口描述 SET_001 進入設置主窗口 1、從主菜單點擊設置進入

手機測試-時鐘試用

繼續 文本 div gpo tester 方向 下載 廣泛 提示 ID 功能描述 操作步驟 預期結果 test time P/F comment tester test time P/F comment tester 時鐘設置 鬧鐘

手機測試-STK試用

適應 轉移 用例 主菜單 包括 拒絕 訂閱 速度 界面 ID 功能描述 操作步驟 預期結果 test time P/F comment tester test time P/F comment tester STK服務 SIM卡適應

軟體測試之如何編寫單元試用

單元測試是以程式設計說明書為指導,測試模組範圍內的重要控制路徑,以揭露錯誤。 當程式編好以後,將它錄製在媒體上,或者直接由終端鍵盤輸入到機中進行除錯。測試的相對複雜性和所發現的錯誤受到單元測試所限定的範圍的限制。它在執行的過程中緊密的依照程式框架對模組進行測試(除錯),測試包含入口和出口的引數,輸入和輸出資