2016年計算機二級公共基礎(chǔ)學習教程:軟件測試

字號:


    (四)軟件測試
    1.軟件測試的目的
    使用人工或自動手段來運行或測定某個系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或是否弄清預期的結(jié)果與實際結(jié)果之間的差別。
    2.軟件測試的準則
    所有測試應(yīng)追溯到需求
    嚴格執(zhí)行測試計劃,排除測試的隨意性
    充分注意測試中的群集現(xiàn)象
    程序員應(yīng)避免檢查自己的程序
    窮舉測試不可能
    妥善保存測試計劃、測試用例、出錯統(tǒng)計和最終分析報告,為維護提供方便
    3.軟件測試技術(shù)與方法綜述
    1)靜態(tài)測試與動態(tài)測試
    靜態(tài)測試包括:代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量度量等。
    動態(tài)測試是基于計算機的測試,根據(jù)軟件需求設(shè)計測試用例,利用這些用例去運行程序,以發(fā)現(xiàn)程序錯誤的過程。
    2)白盒測試方法與測試用例設(shè)計
    白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試。
    白盒測試的原則:保證所有的測試模塊中每一條獨立路徑至少執(zhí)行一次;保證所有的判斷分支至少執(zhí)行一次;保證所有的模塊中每一個循環(huán)都在邊界條件和一般條件下至少各執(zhí)行一次;驗證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性
    主要的方法有:邏輯覆蓋(包括語句覆蓋、路徑覆蓋、判定覆蓋、條件覆蓋和判斷—條件覆蓋)、基本路徑測試等
    3)黑盒測試方法與測試用例設(shè)計
    黑盒測試方法也稱功能測試或數(shù)據(jù)驅(qū)動測試,是對軟件已經(jīng)實現(xiàn)的功能是否滿足需求進行測試和驗證。
    黑盒測試主要診斷功能不對或遺漏、界面錯誤、數(shù)據(jù)結(jié)構(gòu)或外部數(shù)據(jù)庫訪問錯誤、性能錯誤、初始化和終止條件錯。
    黑盒測試方法主要有:等價類劃分法(包括有效等價類和無效等價類)、邊界值分析法、錯誤推測法、因果圖等,主要用于軟件確認測試。
    4.軟件測試的實施
    1)單元測試
    對模塊進行測試,用于發(fā)現(xiàn)模塊內(nèi)部的錯誤
    2)集成測試
    測試和組裝軟件的過程,主要用于發(fā)現(xiàn)與接口有關(guān)的錯誤。
    集成測試包括的內(nèi)容:軟件單元的接口測試、全局數(shù)據(jù)結(jié)構(gòu)測試、邊界條件和非法輸入的測試等。
    集成測試分為:增量方式組裝(包括自頂而下、自底而上、自頂向下和自底向上的混合增量方式)與非增量方式組裝。
    3)確認測試
    驗證軟件的功能和性能及其他特征是否滿足了需求規(guī)格說明中確定的各種需求,以及軟件配置是否完全、正確。
    4)系統(tǒng)測試
    將經(jīng)過測試后的軟件,與計算機的硬件、外設(shè)、支持軟件、數(shù)據(jù)和人員等其他元素組合在一起,在實際運行環(huán)境中進行一系列的集成測試和確認測試。