樓主需要好好學(xué)學(xué)軟件工程概論,做開(kāi)發(fā)和測試都必須要有了解的 WEB應用和桌面應用的理論大多是通用的 系統測試的任務(wù)是近可能徹底的檢查出程序中的錯誤,提高軟件系統的可靠性,其目的是檢驗系統"做得怎樣?"。
這階段又可分為三個(gè)步驟:模塊測試,測試每個(gè)模塊的程序是否有錯誤;組裝測試,測試模塊之間的接口是否正確;確認測試,測試整個(gè)軟件系統是否滿(mǎn)足用戶(hù)功能和性能的要求。該階段結束應交付測試報告,說(shuō)明測試數據的選擇,測試用例以及測試結果是否符合預期結果。
測試發(fā)現問(wèn)題之后要經(jīng)過(guò)調試找出錯誤原因和位置,然后進(jìn)行改正。 白盒測試也稱(chēng)結構測試或邏輯驅動(dòng)測試,它是按照程序內部的結構測試程序,通過(guò)測試來(lái)檢測產(chǎn)品內部動(dòng)作是否按照設計規格說(shuō)明書(shū)的規定正常進(jìn)行,檢驗程序中的每條通路是否都能按預定要求正確工作。
黑盒測試也稱(chēng)功能測試,它是通過(guò)測試來(lái)檢測每個(gè)功能是否都能正常使用。在測試地,把程序看作一個(gè)不能打開(kāi)的黑盒子,在完全不考慮程序內部結構和內部特性的情況下,在程序接口進(jìn)行測試,它只檢查程序功能是否按照需求規格說(shuō)明書(shū)的規定正常使用,程序是否能適當地接收輸入數據而產(chǎn)生正確的輸出信息。
黑盒測試著(zhù)眼于程序外部結構,不考慮內部邏輯結構,主要針對軟件界面和軟件功能進(jìn)行測試。
軟件測試的方法根據軟件工程的組織和實(shí)現方式,有很大差別,有些是比較技術(shù)化的方法,有些則是工程方法,主要分為: 黑盒測試方法群:等價(jià)類(lèi)劃分、邊界值、因果圖、基路徑法、專(zhuān)家測試法、smoking、場(chǎng)景測試等 白盒測試方法群:同行評審、需求審查、代碼審查、接口測試(調用測試和返回測試,需要結合等價(jià)類(lèi)和因果圖方法)等。
當在單元層面黑盒而在集成層面白盒時(shí),基本上兩類(lèi)方法就會(huì )有結合了,就會(huì )出現習慣上說(shuō)的灰盒測試(說(shuō)實(shí)話(huà),不做到純產(chǎn)品級開(kāi)發(fā),基本上都是用的灰盒測試)。
(1)黑盒測試(black-box testing):只關(guān)心輸入和輸出的結果 (2)白盒測試(white-box testing):去研究里面的源代碼和程序結構2、按是否運行程序分為:(1)靜態(tài)測試(static testing):是指不實(shí)際運行被測軟件,而只是靜態(tài)地檢查程序代碼、界面或文檔可能存在的錯誤的過(guò)程。
靜態(tài)測試包括:對于代碼測試,主要是測試代碼是否符合相應的標準和規范。對于界面測試,主要測試軟件的實(shí)際界面與需求中的說(shuō)明是否相符。
對于文檔測試,主要測試用戶(hù)手冊和需求說(shuō)明是否真正符合用戶(hù)的實(shí)際需求。(5)動(dòng)態(tài)測試(dynamic testing),是指實(shí)際運行被測程序,輸入相應的測試數據,檢查輸出結果和預期結果是否相符的過(guò)程3、按階段劃分:(1)單元測試(unit testing),是指對軟件中的最小可測試單元進(jìn)行檢查和驗證。
樁模塊(stud)是指模擬被測模塊所調用的模塊,驅動(dòng)模塊(driver)是指模擬被測模塊的上級模塊,驅動(dòng)模塊用來(lái)接收測試數據,啟動(dòng)被測模塊并輸出結果。(2)集成測試(integration testing),是單元測試的下一階段,是指將通過(guò)測試的單元模塊組裝成系統或子系統,再進(jìn)行測試,重點(diǎn)測試不同模塊的接口部門(mén)。
集成測試就是用來(lái)檢查各個(gè)單元模塊結合到一起能否協(xié)同配合,正常運行。(3)系統測試(system testing),指的是將整個(gè)軟件系統看做一個(gè)整體進(jìn)行測試,包括對功能、性能,以及軟件所運行的軟硬件環(huán)境進(jìn)行測試。
系統測試的主要依據是《系統需求規格說(shuō)明書(shū)》文檔。(4)驗收測試(acceptance testing),指的是在系統測試的后期,以用戶(hù)測試為主,或有測試人員等質(zhì)量保障人員共同參與的測試,它也是軟件正式交給用戶(hù)使用的最后一道工序。
驗收測試又分為a測試和beta測試,其中a測試指的是由用戶(hù)、測試人員、開(kāi)發(fā)人員等共同參與的內部測試,而beta測試指的是內測后的公測,即完全交給最終用戶(hù)測試。4、黑盒測試分為功能測試和性能測試:1)功能測試(function testing),是黑盒測試的一方面,它檢查實(shí)際軟件的功能是否符合用戶(hù)的需求。
包括邏輯功能測試(logic function testing) 界面測試(UI testing)UI=User Interface 易用性測試(usability testing):是指從軟件使用的合理性和方便性等角度對軟件系統進(jìn)行檢查,來(lái)發(fā)現軟件中不方便用戶(hù)使用的地方。兼容性測試(compatibility testing):包括硬件兼容性測試和軟件兼容性測試2)性能測試(performance testing) 軟件的性能主要有時(shí)間性能和空間性能兩種 時(shí)間性能:主要指軟件的一個(gè)具體事務(wù)的響應時(shí)間(respond time)。
空間性能:主要指軟件運行時(shí)所消耗的系統資源。軟件性能測試分為:一般性能測試:指的是讓被測系統在正常的軟硬件環(huán)境下運行,不向其施加任何壓力的性能測試。
穩定性測試也叫可靠性測試(reliability testing):是指連續運行被測系統檢查系統運行時(shí)的穩定程度。負載測試(load testing):是指讓被測系統在其能忍受的壓力的極限范圍之內連續運行,來(lái)測試系統的穩定性。
壓力測試(stress testing):是指持續不斷的給被測系統增加壓力,直到將被測系統壓垮為止,用來(lái)測試系統所能承受的最大壓力。(Validate the system or software can allowed the biggest stress.)5、其他測試類(lèi)型:回歸測試(regression testing)是指對軟件的新的版本測試時(shí),重復執行上一個(gè)版本測試時(shí)的用例。
(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.) 冒煙測試(smoke testing),是指在對一個(gè)新版本進(jìn)行大規模的測試之前,先驗證一下軟件的基本功能是否實(shí)現,是否具備可測性。(validate the major function is deployed or not in software of system when a new build or release is implement.) 隨機測試(random testing),是指測試中所有的輸入數據都是隨機生成的,其目的是模擬用戶(hù)的真實(shí)操作,并發(fā)現一些邊緣性的錯誤。
(means or all the test data is random, to validate the some edge bugs.)。
1、從是否關(guān)心內部結構來(lái)看 (1)白盒測試:又稱(chēng)為結構測試或邏輯驅動(dòng)測試,是一種按照程序內部邏輯結構和編碼結構,設計測試數據并完成測試的一種測試方法。
(2)黑盒測試:又稱(chēng)為數據驅動(dòng)測試,把測試對象當做看不見(jiàn)的黑盒,在完全不考慮程序內部結構和處理過(guò)程的情況下,測試者僅依據程序功能的需求規范考慮,確定測試用例和推斷測試結果的正確性,它是站在使用軟件或程序的角度,從輸入數據與輸出數據的對應關(guān)系出發(fā)進(jìn)行的測試。(3)灰盒測試:是一種綜合測試法,它將“黑盒”測試與“白盒”測試結合在一起,是基于程序運行時(shí)的外部表現又結合內部邏輯結構來(lái)設計用例,執行程序并采集路徑執行信息和外部用戶(hù)接口結果的測試技術(shù)。
2、從是否執行代碼看 (1)靜態(tài)測試:指不運行被測程序本身,僅通過(guò)分析或檢查源程序的語(yǔ)法、結構、過(guò)程、接口等來(lái)檢查程序的正確性。(2)動(dòng)態(tài)測試:是指通過(guò)運行被測程序,檢查運行結果與預期結果的差異,并分析運行效率、正確性和健壯性等性能指標。
3、從開(kāi)發(fā)過(guò)程級別看 (1)單元測試:又稱(chēng)模塊測試,是針對軟件設計的最小單位----程序模塊或功能模塊,進(jìn)行正確性檢驗的測試工作。其目的在于檢驗程序各模塊是否存在各種差錯,是否能正確地實(shí)現了其功能,滿(mǎn)足其性能和接口要求。
(2)集成測試:又叫組裝測試或聯(lián)合,是單元測試的多級擴展,是在單元測試的基礎上進(jìn)行的一種有序測試。旨在檢驗軟件單元之間的接口關(guān)系,以期望通過(guò)測試發(fā)現各軟件單元接口之間存在的問(wèn)題,最終把經(jīng)過(guò)測試的單元組成符合設計要求的軟件。
(3)系統測試:是為判斷系統是否符合要求而對集成的軟、硬件系統進(jìn)行的測試活動(dòng)、它是將已經(jīng)集成好的軟件系統,作為基于整個(gè)計算機系統的一個(gè)元素,與計算機硬件、外設、某些支持軟件、人員、數據等其他系統元素結合在一起,在實(shí)際運行環(huán)境下,對計算機系統進(jìn)行一系列的組裝測試和確認測試。在系統測試中,對于具體的測試類(lèi)型有:(1)功能測試:對軟件需求規格說(shuō)明書(shū)中的功能需求逐項進(jìn)行的測試,以驗證功能是否滿(mǎn)足要求。
(2)性能測試:對軟件需求規格說(shuō)明書(shū)的功能需求逐項進(jìn)行的測試,以驗證功能是否滿(mǎn)足要求。(3)接口測試:對軟件需求規格說(shuō)明中的接口需求逐項進(jìn)行的測試。
(4)人機交互界面測試:對所有人機交互界面提供的操作和顯示界面進(jìn)行的測試,以檢驗是否滿(mǎn)足用戶(hù)的需求。(5)強度測試:強制軟件運行在異常乃至發(fā)生故障的情況下(設計的極限狀態(tài)到超出極限),驗證軟件可以運行到何種程序的測試。
(6)余量測試:對軟件是否達到規格說(shuō)明中要求的余量的測試。(7)安全性測試:檢驗軟件中已存在的安全性、安全保密性措施是否有效的測試,(8)可靠性測試:在真實(shí)的或仿真的環(huán)境中,為做出軟件可靠性估計而對軟件進(jìn)行的功能(其輸入覆蓋和環(huán)境覆蓋一般大于普通的功能測試) (9)恢復性測試:對有恢復或重置功能的軟件的每一類(lèi)導致恢復或重置的情況,逐一進(jìn)行的測試。
(10)邊界測試:對軟件處在邊界或端點(diǎn)情況下運行狀態(tài)的測試。(11)數據處理測試:對完成專(zhuān)門(mén)數據處理功能所進(jìn)行的測試。
(12)安裝性測試:對安裝過(guò)程是否符合安裝規程的測試,以發(fā)現安裝過(guò)程中的錯誤。(13)容量測試:檢驗軟件的能力最高能達到什么程度的測試。
(14)互操作性測試:為驗證不同軟件之間的互操作能力而進(jìn)行的測試。(15)敏感性測試:為發(fā)現在有效輸入類(lèi)中可能引起某種不穩定性或不正常處理的某些數據的組合而進(jìn)行的測試。
(16)標準符合性測試:驗證軟件與相關(guān)國家標準或規范(如軍用標準、國家標準、行業(yè)標準及國際標準)一致性的測試。(17)兼容性測試:驗證軟件在規定條件下與若干個(gè)實(shí)體共同使用或實(shí)現數據格式轉換時(shí)能滿(mǎn)足有關(guān)要求能力的測試。
(18)中文本地化測試:驗證軟件在不降低原有能力的條件下,處理中文能力的測試。4、從執行過(guò)程是否需要人工干預來(lái)看 (1)手工測試:就是測試人員按照事先為覆蓋被測軟件需求而編寫(xiě)的測試用例,根據測試大綱中所描述的測試步驟和方法,手工地一個(gè)一個(gè)地輸 入執行,包括與被測軟件進(jìn)行交互(如輸入測試數據、記錄測試結果等),然后觀(guān)察測試結果,看被測程序是否存在問(wèn)題,或在執行過(guò)程中是否會(huì )有一場(chǎng)發(fā)生,屬于比較原始但是必須執行的一個(gè)步驟。
(2)自動(dòng)化測試:實(shí)際上是將大量的重復性的測試工作交給計算機去完成,通常是使用自動(dòng)化測試工具來(lái)模擬手動(dòng)測試步驟,執行用某種程序設計語(yǔ)言編寫(xiě)的過(guò)程(全自動(dòng)測試就是指在自動(dòng)測試過(guò)程中,不需要人工干預,由程序自動(dòng)完成測試的全過(guò)程;半自動(dòng)測試就是指在自動(dòng)測試過(guò)程中,需要手動(dòng)輸入測試用例或選擇測試路徑,再由自動(dòng)測試程序按照人工指定的要求完成自動(dòng)測試)5、從測試實(shí)施組織看 (1)開(kāi)發(fā)測試:開(kāi)發(fā)人員進(jìn)行的測試 (2)用戶(hù)測試:用戶(hù)方進(jìn)行的測試 (3)第三方測試:有別于開(kāi)發(fā)人員或用戶(hù)進(jìn)行的測試,由專(zhuān)業(yè)的第三方承擔的測試,目的是為了保證測試工作的客觀(guān)性6、從測試所處的環(huán)境看 (1)阿爾法測試:是由一個(gè)用戶(hù)在開(kāi)發(fā)環(huán)境下進(jìn)行的測試,也可以是公司內部的用戶(hù)在模擬實(shí)際操作環(huán)境下進(jìn)行的測試 (2)。
軟件測試的目的;在規定的條件下對程序進(jìn)行操作,以發(fā)現程序錯誤,衡量軟件質(zhì)量,并對其是否能滿(mǎn)足設計要求進(jìn)行評估。
準則:對計算機軟件進(jìn)行測試前,首先需遵循軟件測試原則,即不完全原則的遵守。不完全原則即為若測試不完全、測試過(guò)程中涉及免疫性原則的部分較多,可對軟件測試起到一定幫助。
因軟件測試因此類(lèi)因素具有一定程度的免疫性,測試人員能夠完成的測試內容與其免疫性成正比,若想使軟件測試更為流暢、測試效果更為有效,首先需遵循此類(lèi)原則,將此類(lèi)原則貫穿整個(gè)開(kāi)發(fā)流程,不斷進(jìn)行測試,而并非一次性全程測試。
測試方法:
1、靜態(tài)測試方法
軟件代碼的靜態(tài)分析測驗,此類(lèi)過(guò)程中應用數據較少,主要過(guò)程為通過(guò)軟件的靜態(tài)性測試(即人工推斷或計算機輔助測試)測試程序中運算方式、算法的正確性,進(jìn)而完成測試過(guò)程,此類(lèi)測試的優(yōu)點(diǎn)在于能夠消耗較短時(shí)間、較少資源完成對軟件、軟件代碼的測試,能夠較為明顯地發(fā)現此類(lèi)代碼中出現的錯誤。
2、動(dòng)態(tài)測試
計算機動(dòng)態(tài)測試的主要目的為檢測軟件運行中出現的問(wèn)題,較靜態(tài)測試方式相比,其被稱(chēng)為動(dòng)態(tài)的原因即為其測試方式主要依賴(lài)程序的運用,主要為檢測軟件中動(dòng)態(tài)行為是否缺失、軟件運行效果是否良好。
3、黑盒測試
通過(guò)數據輸入觀(guān)察數據輸出,檢查軟件內部功能是否正常。測試展開(kāi)時(shí),數據輸入軟件中,等待數據輸出。數據輸出時(shí)若與預計數據一致,則證明該軟件通過(guò)測試,若數據與預計數據有出入,即便出入較小亦證明軟件程序內部出現問(wèn)題,需盡快解決。
4、白盒測試
白盒測試相對于黑盒測試而言具有一定透明性,原理為根據軟件內部應用、源代碼等對產(chǎn)品內部工作過(guò)程進(jìn)行調試。測試過(guò)程中常將其與軟件內部結構協(xié)同展開(kāi)分析,最大優(yōu)點(diǎn)即為其能夠有效解決軟件內部應用程序出現的問(wèn)題,測試過(guò)程中常將其與黑盒測試方式結合,當測試軟件功能較多時(shí),白盒測試法亦可對此類(lèi)情況展開(kāi)有效調試。
擴展資料
軟件測試工具
開(kāi)源測試管理工具:Bugfree、Bugzilla、TestLink、mantis zentaopms。
開(kāi)源功能自動(dòng)化測試工具:Watir、Selenium [1] 、MaxQ、WebInject。
開(kāi)源性能自動(dòng)化測試工具:Jmeter、OpenSTA、DBMonster、TPTEST、Web Application Load Simulator。
其他測試工具與框架:Rational Functional Tester、Borland Silk系列工具、WinRunner、Robot等。
禪道測試管理工具:功能比較全面的測試管理工具,功能涵蓋軟件研發(fā)的全部生命周期,為軟件測試和產(chǎn)品研發(fā)提供一體化的解決方案。是一款優(yōu)秀的國產(chǎn)開(kāi)源測試管理工具。
Quality Center:基于Web的測試管理工具,可以組織和管理應用程序測試流程的所有階段,包括指定測試需求、計劃測試、執行測試和跟蹤缺陷。
QuickTest Professional:用于創(chuàng )建功能和回歸測試。
LoadRunner:預測系統行為和性能的負載測試工具。
國內免費軟件測試工具有:AutoRunner和TestCenter。
參考資料來(lái)源:百度百科-軟件測試技術(shù)
參考資料來(lái)源:百度百科-軟件測試
軟件測試生命周期包括6個(gè)階段(大體上):1)計劃 2)分析,3)設計,4)構建,5)測試周期,6)最后測試和實(shí)施,和7)實(shí)施后。
1. 計劃(產(chǎn)品定義階段)
高層次的測試計劃(包含多重測試周期)
質(zhì)量保證計劃(質(zhì)量目標,測試標準等 )
確定計劃評審的時(shí)間
報告問(wèn)題過(guò)程
確定問(wèn)題的分類(lèi)
確定驗收標準-給質(zhì)量保證員和用戶(hù)。
建立應用程序測試數據庫
確定衡量標準,例如缺陷數量/嚴重程度和缺陷起源(僅舉幾個(gè)例子) 。
確定項目質(zhì)量度量
開(kāi)始制定項目整體測試時(shí)間表(時(shí)間,資源等)
必需階段:評審產(chǎn)品定義文檔
文檔中加入質(zhì)量保證標準,作為工程改善進(jìn)程的一部分
根據該產(chǎn)品的特點(diǎn)幫助確定問(wèn)題的范圍
大約每月要花5 -1 0小時(shí)在這一方面
計劃在數據庫管理所有測試用例,包括手工方面或者自動(dòng)化方面。
2. 分析(外部文檔階段)
根據業(yè)務(wù)需求開(kāi)發(fā)功能驗證矩陣。
制定測試用例格式-估計時(shí)間和分配優(yōu)先級。
制定測試周期矩陣與時(shí)間線(xiàn)
根據功能驗證矩陣開(kāi)始編寫(xiě)測試用例
根據業(yè)務(wù)需求計劃測試用例基準數據
確定用于自動(dòng)化測試的測試用例。
自動(dòng)化團隊開(kāi)始在測試工具中創(chuàng )建變量文件和高層次的測試腳本。
為自動(dòng)化系統中的跟蹤組件設置路徑和自動(dòng)化引導。
界定壓力和性能測試的范疇。
按照每個(gè)測試用例的數據要求開(kāi)始建立基準數據庫。
定義維護基準數據庫的過(guò)程,即備份,恢復,驗證。
開(kāi)始規劃項目所需的測試周期數,和回歸測試次數。
開(kāi)始文檔復查,如:功能設計文檔,業(yè)務(wù)需求文檔,產(chǎn)品規格說(shuō)明書(shū),產(chǎn)品外部文檔等。
審查測試環(huán)境和實(shí)驗室,前端與后端系統都要。
準備使用McCabe工具,以支持白盒測試中代碼的研發(fā)和復雜性分析
建立反饋機制并開(kāi)始錄入文檔。
必需階段:審查外部文件
1、恢復測試 恢復測試主要檢查系統的容錯能力。
當系統出錯時(shí),能否在指定時(shí)間間隔內修正錯誤并重新啟動(dòng)系統。恢復測試首先要采用各種辦法強迫系統失敗,然后驗證系統是否能盡快恢復。
對于自動(dòng)恢復需驗證重新初始化(reinitialization)、檢查點(diǎn)(checkpointing mechanisms)、數據恢復(data recovery)和重新啟動(dòng) (restart)等機制的正確性;對于人工干預的恢復系統,還需估測平均修復時(shí)間,確定其是否在可接受的范圍內。 2、安全測試 安全測試檢查系統對非法侵入的防范能力。
安全測試期間,測試人員假扮非法入侵者,采用各種辦法試圖突破防線(xiàn)。例如,①想方設法截取或破譯口令;②專(zhuān)門(mén)定做軟件破壞系統的保護機制;③故意導致系統失敗,企圖趁恢復之機非法進(jìn)入;④試圖通過(guò)瀏覽非保密數據,推導所需信息,等等。
理論上講,只要有足夠的時(shí)間和資源,沒(méi)有不可進(jìn)入的系統。因此系統安全設計的準則是,使非法侵入的代價(jià)超過(guò)被保護信息的價(jià)值。
此時(shí)非法侵入者已無(wú)利可圖。 3、強度測試 強度測試檢查程序對異常情況的抵抗能力。
強度測試總是迫使系統在異常的資源配置下運行。例如,①當中斷的正常頻率為每秒一至兩個(gè)時(shí),運行每秒產(chǎn)生十個(gè)中斷的測試用例;②定量地增長(cháng)數據輸入率,檢查輸入子功能的反映能力;③運行需要最大存儲空間(或其他資源)的測試用例;④運行可能導致虛存操作系統崩潰或磁盤(pán)數據劇烈抖動(dòng)的測試用例,等等。
4、性能測試 對于那些實(shí)時(shí)和嵌入式系統,軟件部分即使滿(mǎn)足功能要求,也未必能夠滿(mǎn)足性能要求,雖然從單元測試起,每一測試步驟都包含性能測試,但只有當系統真正集成之后,在真實(shí)環(huán)境中才能全面、可靠地測試運行性能系統性能測試是為了完成這一任務(wù)。性能測試有時(shí)與強度測試相結合,經(jīng)常需要其他軟硬件的配套支持。
1. 等價(jià)類(lèi)劃分 常見(jiàn)的軟件測試面試題劃分等價(jià)類(lèi): 等價(jià)類(lèi)是指某個(gè)輸入域的子集合.在該子集合中,各個(gè)輸入數據對于揭露程序中的錯誤都是等效的.并合理地假定:測試某等價(jià)類(lèi)的代表值就等于對這一類(lèi)其它值的測試.因此,可以把全部輸入數據合理劃分為若干等價(jià)類(lèi),在每一個(gè)等價(jià)類(lèi)中取一個(gè)數據作為測試的輸入條件,就可以用少量代表性的測試數據.取得較好的測試結果.等價(jià)類(lèi)劃分可有兩種不同的情況:有效等價(jià)類(lèi)和無(wú)效等價(jià)類(lèi). 2. 邊界值分析法 邊界值分析方法是對等價(jià)類(lèi)劃分方法的補充。
測試工作經(jīng)驗告訴我,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內部.因此針對各種邊界情況設計測試用例,可以查出更多的錯誤. 使用邊界值分析方法設計測試用例,首先應確定邊界情況.通常輸入和輸出等價(jià)類(lèi)的邊界,就是應著(zhù)重測試的邊界情況.應當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數據,而不是選取等價(jià)類(lèi)中的典型值或任意值作為測試數據. 3. 錯誤推測法 基于經(jīng)驗和直覺(jué)推測程序中所有可能存在的各種錯誤, 從而有針對性的設計測試用例的方法. 錯誤推測方法的基本思想: 列舉出程序中所有可能有的錯誤和容易發(fā)生錯誤的特殊情況,根據他們選擇測試用例. 例如, 在單元測試時(shí)曾列出的許多在模塊中常見(jiàn)的錯誤. 以前產(chǎn)品測試中曾經(jīng)發(fā)現的錯誤等, 這些就是經(jīng)驗的總結。還有, 輸入數據和輸出數據為0的情況。
輸入表格為空格或輸入表格只有一行. 這些都是容易發(fā)生錯誤的情況。可選擇這些情況下的例子作為測試用例. 4. 因果圖方法 前面介紹的等價(jià)類(lèi)劃分方法和邊界值分析方法,都是著(zhù)重考慮輸入條件,但未考慮輸入條件之間的聯(lián)系, 相互組合等. 考慮輸入條件之間的相互組合,可能會(huì )產(chǎn)生一些新的情況. 但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價(jià)類(lèi),他們之間的組合情況也相當多. 因此必須考慮采用一種適合于描述對于多種條件的組合,相應產(chǎn)生多個(gè)動(dòng)作的形式來(lái)考慮設計測試用例. 這就需要利用因果圖(邏輯模型). 因果圖方法最終生成的就是判定表. 它適合于檢查程序輸入條件的各種組合情況. 5. 正交表分析法 有時(shí)候,可能因為大量的參數的組合而引起測試用例數量上的激增,同時(shí),這些測試用例并沒(méi)有明顯的優(yōu)先級上的差距,而測試人員又無(wú)法完成這么多數量的測試,就可以通過(guò)正交表來(lái)進(jìn)行縮減一些用例,從而達到盡量少的用例覆蓋盡量大的范圍的可能性。
6. 場(chǎng)景分析方法 指根據用戶(hù)場(chǎng)景來(lái)模擬用戶(hù)的操作步驟,這個(gè)比較類(lèi)似因果圖,但是可能執行的深度和可行性更好。 白盒測試用例設計的關(guān)鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結果 黑盒法用例設計的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。
不可能做到完全測試,以最少的用例在合理的時(shí)間內發(fā)現最多的問(wèn)題 詳細的描述一個(gè)測試活動(dòng)完整的過(guò)程。1. 項目經(jīng)理通過(guò)和客戶(hù)的交流,完成需求文檔,由開(kāi)發(fā)人員和測試人員共同完成需求文檔的評審,評審的內容包括:需求描述不清楚的地方和可能有明顯沖突或者無(wú)法實(shí)現的功。
可以采用軟件測試常用的基該方法:等價(jià)類(lèi)劃分法、邊界值分析法、錯誤推測法、因果圖法、邏輯覆蓋法等設計測試用例。視軟件的不同性質(zhì)采用不同的方法。如何靈活運用各種基該方法來(lái)設計完整的測試用例,并最終實(shí)現暴露隱藏的缺陷,全憑測試設計人員的豐富經(jīng)驗和精心設計。
編寫(xiě)測試用例文檔應有文檔模板,須符合內部的規范要求。測試用例文檔將受制于測試用例管理軟件的約束。 軟件產(chǎn)品或軟件開(kāi)發(fā)項目的測試用例一般以該產(chǎn)品的軟件模塊或子系統為單位,形成一個(gè)測試用例文檔,但并不是絕對的。
測試用例文檔由簡(jiǎn)介和測試用例兩部分組成。簡(jiǎn)介部分編制了測試目的、測試范圍、定義術(shù)語(yǔ)、參考文檔、概述等。測試用例部分逐一列示各測試用例。每個(gè)具體測試用例都將包括下列詳細信息:版本號、模塊名稱(chēng)、用例編號、用例名稱(chēng)、用例級別、預知條件、驗證步驟、期望結果(含判斷標準)、測試結果、測試時(shí)間、測試人員等。
擴展資料
測試執行過(guò)程中,應該注意及時(shí)更新測試用例。往往在測試執行過(guò)程中,才發(fā)現遺漏了一些測試用例,這時(shí)候應該及時(shí)的補充;往往也會(huì )發(fā)現有些測試用例在具體的執行過(guò)程中根本無(wú)法操作,這時(shí)候應該刪除這部分用例;也會(huì )發(fā)現若干個(gè)冗余的測試用例完全可以由某一個(gè)測試用例替代,那么刪除冗余的測試用例。
總之,測試執行的過(guò)程中及時(shí)地更新測試用例是很好的習慣。不要打算在測試執行結束后,統一更新測試用例,如果這樣,往往會(huì )遺漏很多本應該更新的測試用例。
參考資料來(lái)源:百度百科-測試用例設計
參考資料來(lái)源:百度百科-測試用例
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:3.068秒