軟件測(cè)試的常識(shí)_第1頁(yè)
軟件測(cè)試的常識(shí)_第2頁(yè)
軟件測(cè)試的常識(shí)_第3頁(yè)
軟件測(cè)試的常識(shí)_第4頁(yè)
軟件測(cè)試的常識(shí)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

軟件測(cè)試基本概念1.1軟件分類按功能:系統(tǒng)軟件、應(yīng)用軟件按技術(shù)架構(gòu):?jiǎn)螜C(jī)版軟件、C/S結(jié)構(gòu)軟件、B/S結(jié)構(gòu)軟件按功能:產(chǎn)品軟件、項(xiàng)目軟件按開發(fā)規(guī)模:小型軟件、中型軟件、大型軟件1.2測(cè)試用例(TC)測(cè)試用例的基本要素:測(cè)試環(huán)境、操作步驟、輸入數(shù)據(jù)、期望結(jié)果測(cè)試模板:Excel模板(適合寫功能用例)、Word模板(適合寫性能用例)軟件測(cè)試分類2.1黑盒測(cè)試和白盒測(cè)試黑盒測(cè)試(black-boxtesting):把被測(cè)軟件看作一個(gè)黑盒子,只關(guān)心軟件的輸入數(shù)據(jù)和輸出結(jié)果。它包括功能測(cè)試和性能測(cè)試。白盒測(cè)試(white-boxtesting):研究軟件的源碼和程序結(jié)構(gòu)。需要一定編碼能力,并會(huì)使用一些測(cè)試工具。2.2靜態(tài)測(cè)試和動(dòng)態(tài)測(cè)試靜態(tài)測(cè)試(statictesting):不實(shí)際運(yùn)行被測(cè)軟件,只是靜態(tài)地檢查程序代碼、界面或文檔中可能存在的錯(cuò)誤。動(dòng)態(tài)測(cè)試(dynamictesting):實(shí)際運(yùn)行被測(cè)軟件,輸入相應(yīng)的測(cè)試數(shù)據(jù),檢查實(shí)際輸出結(jié)果和預(yù)期結(jié)果是否相符。2.3單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試它們是軟件測(cè)試中的重要概念,是按照軟件測(cè)試的階段來(lái)劃分的。單元測(cè)試(unittesting):指對(duì)軟件中的最小可測(cè)試單元進(jìn)行檢查和認(rèn)證。通常在程序員編碼之后,代碼已通過編譯后進(jìn)行。單元測(cè)試一般由白拿測(cè)試工程師或開發(fā)人員來(lái)測(cè)試。依據(jù)是源程序本身和項(xiàng)目的<<詳細(xì)設(shè)計(jì)>>文檔。標(biāo)準(zhǔn)是語(yǔ)句的覆蓋率達(dá)到100%,分支的覆蓋率達(dá)到85%。集成測(cè)試(integrationtesting):?jiǎn)卧獪y(cè)試的下一個(gè)階段,是指將通過測(cè)試的單元模塊組裝成系統(tǒng)或子系統(tǒng),再進(jìn)行測(cè)試,重點(diǎn)測(cè)試不同模塊的接口部分。集成測(cè)試就是用來(lái)檢查各個(gè)單元模塊結(jié)合到一起能否協(xié)同配合,正常運(yùn)行。一般由白拿測(cè)試工程師或開發(fā)人員來(lái)測(cè)試。集成測(cè)試的依據(jù)是單元測(cè)試的模塊以及<<概要設(shè)計(jì)>>文檔。系統(tǒng)測(cè)試(systemtesting):將整個(gè)軟件系統(tǒng)看做一個(gè)整體進(jìn)行測(cè)試,包括對(duì)功能、性能以及軟件所運(yùn)行的軟硬件環(huán)境進(jìn)行測(cè)試。主要由黑盒測(cè)試工程師在整個(gè)系統(tǒng)集成完畢后進(jìn)行測(cè)試,前期主要測(cè)試系統(tǒng)的功能是否滿足需求,后期主要測(cè)試系統(tǒng)運(yùn)行的性能是否滿足需求,以及系統(tǒng)在不同的軟硬件環(huán)境中的兼容性等。系統(tǒng)測(cè)試的主要依據(jù)是<<系統(tǒng)需求規(guī)格說(shuō)明書>>文檔。驗(yàn)收測(cè)試(acceptancetesting):指的是在系統(tǒng)測(cè)試的后期,以用戶測(cè)試為主,或有測(cè)試人員等質(zhì)量保障人員共同參與的測(cè)試,它也是軟件正式交給用戶使用的最后一道工序。驗(yàn)收測(cè)試又分為a測(cè)試和B測(cè)試。其中a測(cè)試指的是由用戶、測(cè)試人員、開發(fā)人員等共同參與的內(nèi)部測(cè)試,而測(cè)試指的是內(nèi)測(cè)后的公測(cè),即完全交給最終用戶測(cè)試。測(cè)試的主要依據(jù)是<<系統(tǒng)需求規(guī)格說(shuō)明書>>和驗(yàn)收標(biāo)準(zhǔn)。2.4功能測(cè)試和性能測(cè)試功能測(cè)試(functiontesting):檢查實(shí)際軟件的功能是否符合用戶需求。細(xì)分為多種:邏輯功能測(cè)試、界面測(cè)試、易用性測(cè)試、安裝測(cè)試、兼容性測(cè)試等。性能測(cè)試(performancetesting):一般要用到自動(dòng)化測(cè)試工具。包括一般性能測(cè)試、穩(wěn)定性測(cè)試、負(fù)載測(cè)試和壓力測(cè)試。一般性能測(cè)試指的是讓被測(cè)試系統(tǒng)在正常的軟硬件環(huán)境下運(yùn)行的測(cè)試。穩(wěn)定性測(cè)試,也叫可靠性測(cè)試,指連續(xù)運(yùn)行被測(cè)系統(tǒng),檢查系統(tǒng)運(yùn)行時(shí)的穩(wěn)定程序。負(fù)載測(cè)試指讓被測(cè)系統(tǒng)在其能忍受的壓力的極限范圍內(nèi)連續(xù)運(yùn)行,為測(cè)試系統(tǒng)的穩(wěn)定性。與穩(wěn)定性測(cè)試的區(qū)別在于負(fù)載測(cè)試需要給被測(cè)系統(tǒng)施加其剛好能承受的壓力,為我們測(cè)試系統(tǒng)在臨界狀態(tài)下運(yùn)行是否穩(wěn)定提供了一種方法。壓力測(cè)試指持續(xù)不斷地給被測(cè)系統(tǒng)增加壓力,直到將被測(cè)系統(tǒng)壓垮為止,用來(lái)測(cè)試系統(tǒng)所能承受的最大壓力。黑盒測(cè)試技術(shù)主要包括等價(jià)類技術(shù)、邊界值技術(shù)、因果圖技術(shù)、業(yè)務(wù)流程圖技術(shù)白盒測(cè)試技術(shù)根據(jù)是否運(yùn)行源代碼,白盒測(cè)試又可分為:靜態(tài)測(cè)試和動(dòng)態(tài)技術(shù)。實(shí)用的動(dòng)態(tài)測(cè)試技術(shù)包括:邊界值、邏輯驅(qū)動(dòng)覆蓋、路徑圖法等。4.1邊界值:數(shù)據(jù)類型的邊界值、數(shù)組的邊界值、分支判斷語(yǔ)句的邊界值(1)數(shù)據(jù)類型的邊界值:32760+8=32768嗎?#include<stdio.h>main(){shortintx=32760;shortinty=8;shortintz=x+y;printf("%d”,z);數(shù)組的邊界值:數(shù)組上下越界問題#include<stdio.h>main(){inti,pos[2];for(i=0;i<=2;i++)scanf("%d”,&pos[i]);//輸入數(shù)組2個(gè)元素for(i=1;i<2;i++)printf("%d”,pos[i]);//打印數(shù)組2個(gè)元素}4.2邏輯驅(qū)動(dòng)覆蓋:是一種傳統(tǒng)的白盒測(cè)試技術(shù),專門用來(lái)測(cè)試程序中的分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。分支結(jié)構(gòu)的測(cè)試又包括語(yǔ)句覆蓋、分支覆蓋、條件覆蓋、分支-條件覆蓋、條件組合覆蓋及路徑覆蓋等方法。語(yǔ)句覆蓋測(cè)試:指設(shè)計(jì)若干測(cè)試用例,使得程序中的每條語(yǔ)句至少執(zhí)行一次。雖然能夠執(zhí)行所有的語(yǔ)句,但不能覆蓋所有的分支,是最弱的邏輯驅(qū)動(dòng)覆蓋。分支覆蓋測(cè)試:也叫判定覆蓋測(cè)試,是指設(shè)計(jì)若干測(cè)試用例,使得程序中每個(gè)分支的取真分支和取假分支至少各執(zhí)行一次。條件覆蓋測(cè)試:條件覆蓋是選取足夠多的測(cè)試數(shù)據(jù),使被測(cè)試程序中不僅每條語(yǔ)句至少執(zhí)行一次,而且每個(gè)判定表達(dá)式中的每個(gè)條件都取到各種可能的結(jié)果。分支-條件覆蓋測(cè)試:選取足夠多的測(cè)試數(shù)據(jù),使得程序中每個(gè)分支的取真分支和取假分支至少各執(zhí)行一次,而且每個(gè)判定表達(dá)式中的每個(gè)條件都取到各種可能的結(jié)果。條件組合覆蓋測(cè)試:選取足夠多的測(cè)試數(shù)據(jù),使得判定表達(dá)式中條件的各種可能組合都至少出現(xiàn)一次。路徑覆蓋測(cè)試:選取足夠多的測(cè)試數(shù)據(jù),使得程序的每條可能路徑都至少執(zhí)行一次。Tag標(biāo)簽:軟件測(cè)試,黑盒測(cè)試,白盒測(cè)試,單元測(cè)試,集成測(cè)試,系統(tǒng)測(cè)試本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:/lovehuahui/archive/2009/11/21/4840715.aspx單元測(cè)試:?jiǎn)卧獪y(cè)試是對(duì)軟件中的基本組成單位進(jìn)行的測(cè)試,如一個(gè)模塊、一個(gè)過程等等。它是軟件動(dòng)態(tài)測(cè)試的最基本的部分,也是最重要的部分之一,其目的是檢驗(yàn)軟件基本組成單位的正確性。一個(gè)軟件單元的正確性是相對(duì)于該單元的規(guī)約而言的。因此,單元測(cè)試以被測(cè)試單位的規(guī)約為基準(zhǔn)。單元測(cè)試的主要方法有控制流測(cè)試、數(shù)據(jù)流測(cè)試、排錯(cuò)測(cè)試、分域測(cè)試等等。集成測(cè)試:集成測(cè)試是在軟件系統(tǒng)集成過程中所進(jìn)行的測(cè)試,其主要目的是檢查軟件單位之間的接口是否正確。它根據(jù)集成測(cè)試計(jì)劃,一邊將模塊或其他軟件單位組合成越來(lái)越大的系統(tǒng),一邊運(yùn)行該系統(tǒng),以分析所組成的系統(tǒng)是否正確,各組成部分是否合拍。集成測(cè)試的策略主要有自頂向下和自底向上兩種。系統(tǒng)測(cè)試:系統(tǒng)測(cè)試是對(duì)已經(jīng)集成好的軟件系統(tǒng)進(jìn)行徹底的測(cè)試,以驗(yàn)證軟件系統(tǒng)的正確性和性能等滿足其規(guī)約所指定的要求,檢查軟件的行為和輸出是否正確并非一項(xiàng)簡(jiǎn)單的任務(wù),它被稱為測(cè)試的“先知者問題”。因此,系統(tǒng)測(cè)試應(yīng)該按照測(cè)試計(jì)劃進(jìn)行,其輸入、輸出和其他動(dòng)態(tài)運(yùn)行行為應(yīng)該與軟件規(guī)約進(jìn)行對(duì)比。軟件系統(tǒng)測(cè)試方法很多,主要有功能測(cè)試、性能測(cè)試、隨機(jī)測(cè)試等等。驗(yàn)收測(cè)試:驗(yàn)收測(cè)試旨在向軟件的購(gòu)買者展示該軟件系統(tǒng)滿足其用戶的需求。它的測(cè)試數(shù)據(jù)通常是系統(tǒng)測(cè)試的測(cè)試數(shù)據(jù)的子集。所不同的是,驗(yàn)收測(cè)試常常有軟件系統(tǒng)的購(gòu)買者代表在現(xiàn)場(chǎng),甚至是在軟件安裝使用的現(xiàn)場(chǎng)。這是軟件在投入使用之前的最后測(cè)試?;貧w測(cè)試:回歸測(cè)試是在軟件維護(hù)階段,對(duì)軟件進(jìn)行修改之后進(jìn)行的測(cè)試。其目的是檢驗(yàn)對(duì)軟件進(jìn)行的修改是否正確。這里,修改的正確性有兩重含義:一是所作的修改達(dá)到了預(yù)定目的,如錯(cuò)誤得到改正,能夠適應(yīng)新的運(yùn)行環(huán)境等等;二是不影響軟件的其他功能的正確性。黑盒測(cè)試黑盒測(cè)試注重于測(cè)試軟件的功能性需求,也即黑盒測(cè)試使軟件工程師派生出執(zhí)行程序所有功能需求的輸入條件。黑盒測(cè)試并不是白盒測(cè)試的替代品,而是用于輔助白盒測(cè)試發(fā)現(xiàn)其他類型的錯(cuò)誤。黑盒測(cè)試試圖發(fā)現(xiàn)以下類型的錯(cuò)誤:1)功能錯(cuò)誤或遺漏;2)界面錯(cuò)誤;3)數(shù)據(jù)結(jié)構(gòu)或外部數(shù)據(jù)庫(kù)訪問錯(cuò)誤;)性能錯(cuò)誤;)初始化和終止錯(cuò)誤。白盒測(cè)試在測(cè)試的早期采用,而黑盒測(cè)試主要用于測(cè)試的后期。黑盒測(cè)試故意不考慮控制結(jié)構(gòu),而是注意信息域。黑盒測(cè)試用于回答以下問題:1) 如何測(cè)試功能的有效性?2) 何種類型的輸入會(huì)產(chǎn)生好的測(cè)試用例?3) 系統(tǒng)是否對(duì)特定的輸入值尤其敏感?4) 如何分隔數(shù)據(jù)類的邊界?5) 系統(tǒng)能夠承受何種數(shù)據(jù)率和數(shù)據(jù)量?6) 特定類型的數(shù)據(jù)組合會(huì)對(duì)系統(tǒng)產(chǎn)生何種影響?運(yùn)用黑盒測(cè)試方法,可以導(dǎo)出滿足以下標(biāo)準(zhǔn)的測(cè)試用例集:1) 所設(shè)計(jì)的測(cè)試用例能夠減少達(dá)到合理測(cè)試所需的附加測(cè)試用例數(shù);2) 所設(shè)計(jì)的測(cè)試用例能夠告知某些類型錯(cuò)誤的存在或不存在,而不是僅僅與特定測(cè)試相關(guān)的錯(cuò)誤。白盒測(cè)試RexBlack白盒測(cè)試,也稱為結(jié)構(gòu)化測(cè)試、基于代碼的測(cè)試,是一種測(cè)試用例設(shè)計(jì)方法,它從程序的控制結(jié)構(gòu)導(dǎo)出測(cè)試用例。用白盒測(cè)試產(chǎn)生的測(cè)試用例能夠:1) 保證一個(gè)模塊中的所有獨(dú)立路徑至少被使用一次;2) 對(duì)所有邏輯值均需測(cè)試true和false;3) 在上下邊界及可操作范圍內(nèi)運(yùn)行所有循環(huán);4) 檢查內(nèi)部數(shù)據(jù)結(jié)構(gòu)以確保其有效性。“我們應(yīng)該更注重于保證程序需求的實(shí)現(xiàn),為什么要花費(fèi)時(shí)間和精力來(lái)?yè)?dān)心(和測(cè)試)邏輯細(xì)節(jié)?”答案在于軟件自身的缺陷:1、 邏輯錯(cuò)誤和不正確假設(shè)與一條程序路徑被運(yùn)行的可能性成反比。當(dāng)我們?cè)O(shè)計(jì)和實(shí)現(xiàn)主流之外的功能、條件或控制時(shí),錯(cuò)誤往往開始出現(xiàn)在我們工作中。日常處理往往被很好地了解,而“特殊情況”的處理則難于發(fā)現(xiàn)。2、 我們經(jīng)常相信某邏輯路徑不可能被執(zhí)行,而事實(shí)上,它可能在正常的基礎(chǔ)上被執(zhí)行。程序的邏輯流有時(shí)是違反直覺的,這意味著我們關(guān)于控制流和數(shù)據(jù)流的一些無(wú)意識(shí)的假設(shè)可能導(dǎo)致設(shè)計(jì)錯(cuò)誤,只有路徑測(cè)試才能發(fā)現(xiàn)這些錯(cuò)誤。3、 筆誤是隨機(jī)的。當(dāng)一個(gè)程序被翻譯為程序設(shè)計(jì)語(yǔ)言源代碼時(shí),有可能產(chǎn)生某些筆誤,很多將被語(yǔ)法檢查機(jī)制發(fā)現(xiàn),但是,其他的會(huì)在測(cè)試開始時(shí)才會(huì)被發(fā)現(xiàn)。筆誤出現(xiàn)在主流上和不明顯的邏輯路徑上的機(jī)率是一樣的。正如Beizer所說(shuō)的:“錯(cuò)誤潛伏在角落里,聚集在邊界上”,而白盒測(cè)試更可能發(fā)現(xiàn)它。GUI測(cè)試RogerS.Pressman圖形用戶界面(GUI)對(duì)軟件測(cè)試提出了有趣的挑戰(zhàn),因?yàn)镚UI開發(fā)環(huán)境有可復(fù)用的構(gòu)件,開發(fā)用戶界面更加省時(shí)而且更加精確。同時(shí),GUI的復(fù)雜性也增加了,從而加大了設(shè)計(jì)和執(zhí)行測(cè)試用例的難度。因?yàn)楝F(xiàn)在GUI設(shè)計(jì)和實(shí)現(xiàn)有了越來(lái)越多的類似,所以也就產(chǎn)生了一系列的測(cè)試標(biāo)準(zhǔn)。下列問題可以作為常見GUI測(cè)試的指南:窗口:-窗口是否基于相關(guān)的輸入和菜單命令適當(dāng)?shù)卮蜷_?-窗口能否改變大小、移動(dòng)和滾動(dòng)?-窗口中的數(shù)據(jù)內(nèi)容能否用鼠標(biāo)、功能鍵、方向鍵和鍵盤訪問?-當(dāng)被覆蓋并重新調(diào)用后,窗口能否正確地再生?-需要時(shí)能否使用所有窗口相關(guān)的功能?-所有窗口相關(guān)的功能是可操作的嗎?-是否有相關(guān)的下拉式菜單、工具條、滾動(dòng)條、對(duì)話框、按鈕、圖標(biāo)和其他控制可為窗口使用,并適當(dāng)?shù)仫@示?-顯示多個(gè)窗口時(shí),窗口的名稱是否被適當(dāng)?shù)乇硎荆?活動(dòng)窗口是否被適當(dāng)?shù)丶恿粒?如果使用多任務(wù),是否所有的窗口被實(shí)時(shí)更新??多次或不正確按鼠標(biāo)是否會(huì)導(dǎo)致無(wú)法預(yù)料的副作用??窗口的聲音和顏色提示和窗口的操作順序是否符合需求??窗口是否正確地被關(guān)閉?下拉式菜單和鼠標(biāo)操作:?菜單條是否顯示在合適的語(yǔ)境中??應(yīng)用程序的菜單條是否顯示系統(tǒng)相關(guān)的特性(如時(shí)鐘顯示)??下拉式操作能正確工作嗎??菜單、調(diào)色板和工具條是否工作正確??是否適當(dāng)?shù)亓谐隽怂械牟藛喂δ芎拖吕阶庸δ埽?是否可以通過鼠標(biāo)訪問所有的菜單功能??文本字體、大小和格式是否正確??是否能夠用其他的文本命令激活每個(gè)菜單功能??菜單功能是否隨當(dāng)前的窗口操作加亮或變灰??菜

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論