qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          軟件測試用例設(shè)計方法

           前面有曰:測試結(jié)果的準確性取決于測試用例的設(shè)計,故測試用例設(shè)計顯得尤為重要。今天就好好梳理下,測試用例的相關(guān)內(nèi)容.

            重要性:Test Case貫穿整個測試執(zhí)行過程,分兩大類:數(shù)值計算類和數(shù)據(jù)處理類

            概述:編寫一組前提條件,輸入,執(zhí)行條件,預(yù)期結(jié)果的組合方案。完成對某個特定需求或目標的測試,體現(xiàn)測試方案,方法,技術(shù)和策略的文檔。

            1、什么是測試用例,為什么要編寫?

            測試用例就是編寫一組條件,輸入,執(zhí)行條件,預(yù)期結(jié)果的并完成對特定需求或目標的測試,體現(xiàn)測試方案,方法,技術(shù)和策略的文檔。

            由于測試用例是把整個測試的執(zhí)行過程分解為若干測試步驟,并仔細的檢查,驗證所編寫程序的正確性。它是軟件測試的核心部件,是測試環(huán)節(jié)執(zhí)行的基本依據(jù)。

            2、主要包含哪些內(nèi)容?需要哪些資料?

            通常如下內(nèi)容:

              測試用例的編號
              測試日期
              測試設(shè)計人員和測試人員
              測試用例的優(yōu)先級
              測試標題
              測試目標的描述(描述它需要實現(xiàn)的功能,包括性能等)
              測試環(huán)境的描述(eg:硬件條件,軟件條件,網(wǎng)絡(luò)條件等)
              輸入數(shù)據(jù)/動作的編寫(具體的執(zhí)行過程)
              測試的步驟(測試數(shù)據(jù)具體的執(zhí)行過程)
              測試的預(yù)期結(jié)果
              測試審查人員

            資料:

              軟件需求說明書
              軟件設(shè)計說明書
              軟件測試需求說明書
              成熟的測試用例(案例庫或財富庫)

            3、有什么作用?

             投入小,易積累,回報大。如何在最短時間內(nèi)以最少的人和資源投入發(fā)現(xiàn)軟件自身的缺陷,完成高效率測試并交出優(yōu)質(zhì)產(chǎn)品,是每個軟件公司探求的目標。因此每 個項目都需要有一套完整,高效,優(yōu)質(zhì)的測試方案和測試方法,如果有了測試用例和測試用例庫則可以預(yù)防部分或減少潛在風險的發(fā)生,另外,若公司事先要求編寫 測試用例和建立相關(guān)測試用例庫,測試人員發(fā)生流動時,對測試和項目進度的影響就會降到最低程度。

            (1)實施測試指導的作用

            在實施測試時一定要嚴格按照測試用例規(guī)定的用例項目和測試步驟逐一測試,并把測試中的各種情況記錄下來(最好用測試管理軟件)。以便書寫測試結(jié)果文檔(建議用測試管理軟件自動生成)

            注意:測試用例是指導測試人員進行測試,通過用例發(fā)現(xiàn)更多的缺陷,而不是限定測試人員的思維。

            (2)指導測試數(shù)據(jù)規(guī)劃的作用

            測試用例數(shù)據(jù)一般都保存在數(shù)據(jù)庫中, 只有進行測試用例設(shè)計時才從數(shù)據(jù)庫中調(diào)出一組或若干組測試用例的數(shù)據(jù)和標準測試結(jié)果。eg:報表等一些對數(shù)據(jù)的正確性要求較高的測試,要事先對測試的數(shù)據(jù) 進行規(guī)劃,報表橫向,縱向多少內(nèi)容。表輸出的格式要求等,進行規(guī)劃設(shè)計要做到事先有準備,測試操作時有案可查。除了這些標準數(shù)據(jù),有時候還需要根據(jù)測試用 例設(shè)計大量邊界值&越界值。

            (3)指導腳本編寫的作用

            軟件測試逐步走向人工測試和自動化測試并行發(fā)展。而自動化測試的核心就是測試腳本,自動化測試腳本編寫的依據(jù)就是測試用例。

            (4)作為評判基準的作用

            測試工作完成后需要評估并進行定論,判斷軟件是否合格,然后出報告。以測試用例為依據(jù)進行評審。總結(jié)如下:

            測試中檢測到Bug數(shù)目

            有效的Bug數(shù)目

            無效的Bug數(shù)目

            有爭議的Bug數(shù)目等

            (5)作為分析缺陷的基準的作用

            測試目的就是發(fā)現(xiàn)Bug,測試結(jié)束后對得到的Bug進行復(fù)查,并對測試用例不斷的補充,完善,最終交付給用戶一個高質(zhì)量的軟件產(chǎn)品。

            4、測試用例的設(shè)計流程,白盒測試用例的設(shè)計和目的?

            一般流程包括:制定測試計劃,編寫測試用例,執(zhí)行測試,跟蹤測試缺陷,編寫測試報告。

            需注意:用例應(yīng)該從系統(tǒng)最高級向最低級逐一展開,每個用例單獨放在文檔中,所有功能都應(yīng)該對應(yīng)到用例中,需依據(jù)需求進行設(shè)計。最好是有豐富經(jīng)驗的測試人員來設(shè)計。用例是多樣化,復(fù)雜中簡單化。

            白盒測試設(shè)計方法:

            邏輯覆蓋:①判定覆蓋②條件覆蓋③判定/條件覆蓋和多條件覆蓋,邏輯值必須測試真,假兩個分支,需要在邊界值內(nèi)和可操作范圍內(nèi)至少循環(huán)一次,并檢查數(shù)據(jù)的內(nèi)部結(jié)構(gòu),保證其有效的實現(xiàn)預(yù)定功能。

            基本路徑測試每個模塊中的獨立路徑至少被執(zhí)行一次

            5、黑盒測試用例的設(shè)計和目的?

            設(shè)計-等價類劃分,邊界值分析,錯誤推測,因果圖

            目的-檢查功能是否實現(xiàn)或遺漏,交互界面是否出錯,數(shù)據(jù)庫讀取,更新操作是否出錯,性能和特性是否得到滿足。

            6、綜合設(shè)計方法

            實際操作設(shè)計測試用例一般“先黑后白”,即先采用黑盒技術(shù)設(shè)計測試用例,再用白盒技術(shù)做一些補充。

            步驟:如果規(guī)格說明書中包含輸入條件,則用因果圖法設(shè)計;如果源碼中遇到輸入輸出邊界,則用邊界值分析法;同時為輸入和輸出識別有效和無效等價類;使用錯誤推測法增加測試用例。

            5點原則和注意項:

            ①測試用例的正確性
            ②測試用例的代表性
            ③測試結(jié)果的可判定性和可重現(xiàn)性
            ④足夠詳細,準確,清晰的步驟
            ⑤不能把測用例設(shè)計等同測試輸入數(shù)據(jù)的設(shè)計

            ①務(wù)追求測試用例設(shè)計一步到位。
            ②勿將多個測試用例混在一個。
            ③用例中,最好不是無經(jīng)驗的人員設(shè)計測試用例。

            7、測試用例設(shè)計需關(guān)注7大要點

            (1)單元測試用例需注意

            在一組單元模塊設(shè)計完成后就開始的測試,單元測試以程序設(shè)計說明書為指導。測試模塊范圍內(nèi)的主要控制路徑,以揭露錯誤。重心放在代碼審查,測試用例,測試特性,用例描述,測試總結(jié)上。后期我會對單元測試進行補充說明。

            被測單元模塊聲明初始狀態(tài)時,即此模塊單元測試的開始。

            正面測試:依據(jù)設(shè)計說明書設(shè)計用例,用等價劃分設(shè)計用例

            負面測試:錯誤猜測和邊界值分析

            覆蓋率:分支覆蓋/條件覆蓋

            (2)功能測試用例設(shè)計要點

            首先考慮等價劃分類,邊界值共用,并用錯誤推測法補充;如果業(yè)務(wù)流程清晰可采用場景法設(shè)計;若程序有詳細的因果關(guān)系,應(yīng)該一開始就采用因果圖法;如果是文件配置類型的測試,考慮功能圖法

            (3)集成測試用例設(shè)計要點

            按詳細設(shè)計說明書來設(shè)計,測試用例數(shù)據(jù)來源于UC,內(nèi)部邏輯結(jié)構(gòu)分析按單元測試進行。

            (4)性能測試用例,需要不斷的迭代完善的過程,一個完整的性能測試通常包括:預(yù)期指標性能測試,獨立業(yè)務(wù)性能測試,組合業(yè)務(wù)性能測試,疲勞強度性能測試,大數(shù)據(jù)量性能測試,網(wǎng)絡(luò)性能測試,服務(wù)器(操作系統(tǒng),Web服務(wù)器,數(shù)據(jù)庫服務(wù)器)性能測試,一些特殊的測試。

            預(yù)期性能測試用例依據(jù)需求和設(shè)計文檔明確的性能要求進行設(shè)計;

            獨立業(yè)務(wù)性能從單個模塊功能和性能要求出發(fā)設(shè)計;

            組合業(yè)務(wù)性能從需求,設(shè)計文檔,現(xiàn)場調(diào)查,系統(tǒng)采集數(shù)據(jù)方面進行用例設(shè)計;

            疲勞強度性能測試需要編寫不同參數(shù)或者負載條件下設(shè)計測試用例;

            大量數(shù)據(jù)性能需考慮數(shù)據(jù)處理能力,用邊界值分析法設(shè)計用例;

            網(wǎng)絡(luò)性能測試使用工具調(diào)整網(wǎng)絡(luò)設(shè)置;

            服務(wù)器測試一定要和前面的測試結(jié)合起來進行。

            (5)系統(tǒng)測試用例根據(jù)需求分析來檢驗軟件是否滿足功能,行為,性能,系統(tǒng)協(xié)調(diào)性等方面的要求。

            使用的數(shù)據(jù)應(yīng)具有代表性,并與真實數(shù)據(jù)的大小和復(fù)雜性相當

            (6)驗收測試用例設(shè)計

            應(yīng)該在研發(fā)階段測試用例基礎(chǔ)上重新編寫,而不能直接拿來使用;需與客戶需求相對應(yīng),面向客戶;把握客戶的關(guān)注點并適當展示軟件的獨特性。

            (7)回歸測試用例設(shè)計要點

            不需要重復(fù)設(shè)計,只需選擇以前的測試用例,針對最重要或最頻繁使用的功能測試用例。

            綜上描述需要結(jié)合實際工作運用實踐,精益求精。趕快行動吧~


          posted on 2013-01-08 18:09 順其自然EVO 閱讀(654) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2013年1月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 揭阳市| 特克斯县| 西乌珠穆沁旗| 宁乡县| 阜南县| 丹巴县| 凤阳县| 保亭| 上思县| 托克托县| 成都市| 尼勒克县| 高安市| 芦溪县| 泾源县| 邯郸县| 高淳县| 顺平县| 石狮市| 东乌珠穆沁旗| 贵定县| 仁怀市| 颍上县| 晋州市| 皋兰县| 金溪县| 陵水| 咸丰县| 海安县| 遂宁市| 瓦房店市| 凉城县| 龙口市| 临泽县| 阿尔山市| 洪雅县| 宜川县| 门源| 鞍山市| 庆元县| 安福县|