• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    使用EclEmma進行的JAVA代碼測試

    發布: 2007-12-11 12:09 | 作者: 孤竹殘夢 | 來源: 網絡轉載 | 查看: 326次 | 進入軟件測試論壇討論

    領測軟件測試網 為了實驗 EclEmma 的特性,我們首先在 Eclipse 的 Workspace 中建立一個名稱為 test.emma 的新 Java 項目。下面,我們在其中建立一個 HelloWorld 類,其代碼如下所示:

    用于測試 EclEmma 的代碼
    package test.emma;public class HelloWorld {/*** @param args*/public static void main(String[] args) {int rand = (int) (Math.random()*100);if(rand%2==0){System.out.println( "Hello, world! 0");}elseSystem.out.println("Hello, world! 1");int result = rand%2==0? rand+rand:rand*rand;System.out.println(result);}}
    接下來,我們通過 EclEmma 運行 HelloWorld.main() 函數。

    對 Java 應用程序代碼進行測試



    執行完畢之后,我們正在編輯 HelloWorld.java 的窗口將會變成如下所示:
    進行覆蓋測試的結果:


    在 Java 編輯器中,EclEmma 用不同的色彩標示了源代碼的測試情況。其中,綠色的行表示該行代碼被完整的執行,紅色部分表示該行代碼根本沒有被執行,而黃色的行表明該行代碼部分被執行。黃色的行通常出現在單行代碼包含分支的情況,例如 上圖 中的 16 行就顯示為黃色。由于程序中有一個隨機確定的分支,因此讀者的窗口可能與這里稍有不同(11 行或者 14 行中有且只有一個紅色的行)。

    除了在源代碼編輯窗口直接進行著色之外,EclEmma 還提供了一個單獨的視圖來統計程序的覆蓋測試率。

    察看程序的覆蓋測試率:


    EclEmma 提供的 Coverage 視圖能夠分層的顯示代碼的覆蓋測試率, 上圖中的信息表明我們對 HelloWorld 的一次運行覆蓋了大約 68.6% 的代碼。

    想在一次運行中覆蓋所有的代碼通常比較困難,如果能把多次測試的覆蓋數據綜合起來進行察看,那么我們就能更方便的掌握多次測試的測試效果。EclEmma 提供了這樣的功能,F在,讓我們重復數次對 HelloWorld 的覆蓋測試。我們注意到 Coverage 視圖總是顯示最新完成的一次覆蓋測試。事實上,EclEmma 為我們保存了所有的測試結果。接下來,我們將通過 Coverage 視圖的工具按鈕來結合多次覆蓋測試的結果。

    用于結合多次覆蓋測試結果的工具欄按鈕:




    當我們多次運行 Coverage 之后,我們可以單擊上圖所示工具欄按鈕。之后,一個對話框將被彈出以供用戶選擇需要合并的覆蓋測試。

    選擇需要合并的覆蓋測試結果:


    在合并完成之后,我們可以觀察到 Java 編輯器和 Coverage 視圖中都顯示了合并之后的結果:

    察看合并后的覆蓋測試結果


    最后我們可以看到,通過多次運行覆蓋測試,最終我們的代碼達到了 91.4% 的測試覆蓋率。有趣的是,上圖中第三行代碼被標記為紅色,而此行代碼實際上是不可執行的。奧妙在于,我們沒有生成任何 HelloWorld 類的實例,因此缺省構造函數沒有被調用,而 EclEmma 將這個特殊代碼的覆蓋狀態標記在類聲明的第一行。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 單元測試


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>