版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
判斷結(jié)構(gòu)的CFG表達(dá)節(jié)點(diǎn)1代表了測(cè)試條件x<y,有不止一條出邊,稱為決策節(jié)點(diǎn)。節(jié)點(diǎn)4有不止一條入邊,稱為匯合節(jié)點(diǎn)。判斷結(jié)構(gòu)的CFG表達(dá)節(jié)點(diǎn)1代表了測(cè)試條件x<y,有不止一條出循環(huán)結(jié)構(gòu)的CFG表達(dá)注意,圖7‐2中的節(jié)點(diǎn)2就是增加的虛擬節(jié)點(diǎn),不代表任何語(yǔ)句。(1)while循環(huán)的CFG表達(dá)循環(huán)結(jié)構(gòu)的CFG表達(dá)注意,圖7‐2中的節(jié)點(diǎn)2就是增加的虛循環(huán)結(jié)構(gòu)的CFG表達(dá)(2)do-while循環(huán)的CFG表達(dá)循環(huán)結(jié)構(gòu)的CFG表達(dá)(2)do-while循環(huán)的CFG表達(dá)循環(huán)結(jié)構(gòu)的CFG表達(dá)(3)for循環(huán)的CFG表達(dá)循環(huán)結(jié)構(gòu)的CFG表達(dá)(3)for循環(huán)的CFG表達(dá)節(jié)點(diǎn)覆蓋即對(duì)于圖G中每個(gè)語(yǔ)法上可達(dá)的節(jié)點(diǎn),測(cè)試用例所執(zhí)行的測(cè)試路徑的集合中至少存在一條測(cè)試路徑訪問該節(jié)點(diǎn)。語(yǔ)法上可達(dá)定義如下:如果存在從節(jié)點(diǎn)ni到節(jié)點(diǎn)n(或邊e)的一條路徑,則節(jié)點(diǎn)n(或邊e)是從節(jié)點(diǎn)ni在語(yǔ)法上可達(dá)的。顯然,節(jié)點(diǎn)覆蓋和語(yǔ)句覆蓋是等價(jià)的。節(jié)點(diǎn)覆蓋即對(duì)于圖G中每個(gè)語(yǔ)法上可達(dá)的節(jié)點(diǎn),測(cè)試用例所執(zhí)行的邊覆蓋即對(duì)于圖G中每一個(gè)可到達(dá)的長(zhǎng)度小于等于1的路徑,測(cè)試用例所執(zhí)行的測(cè)試路徑的集合中至少存在一條測(cè)試路徑游歷該路徑。顯然,邊覆蓋包含節(jié)點(diǎn)覆蓋,且邊覆蓋也可以實(shí)現(xiàn)分支覆蓋。邊覆蓋即對(duì)于圖G中每一個(gè)可到達(dá)的長(zhǎng)度小于等于1的路徑,測(cè)路徑覆蓋路徑覆蓋測(cè)試就是設(shè)計(jì)足夠的測(cè)試用例,覆蓋程序中所有可能的路徑。
測(cè)試用例
通過路徑
覆蓋條件【(2,0,4),(2,0,3)】ace
【(1,1,1),(1,1,1)】abd
【(1,1,2),(1,1,3)】abe
【(3,0,3),(3,0,1)】acd
路徑覆蓋路徑覆蓋測(cè)試就是設(shè)計(jì)足夠的測(cè)試用例,覆蓋程序中所有可基本路徑測(cè)試方法把覆蓋的路徑數(shù)壓縮到一定限度內(nèi),程序中的循環(huán)體最多只執(zhí)行一次。它是在程序控制流圖的基礎(chǔ)上,A.分析控制構(gòu)造的環(huán)路復(fù)雜性,B.導(dǎo)出基本可執(zhí)行路徑集合,C.設(shè)計(jì)測(cè)試用例的方法。設(shè)計(jì)出的測(cè)試用例要保證在測(cè)試中,程序的每一個(gè)可執(zhí)行語(yǔ)句至少要執(zhí)行一次,且每個(gè)條件在執(zhí)行時(shí)都將分別取真和假兩種值。
基本路徑測(cè)試基本路徑測(cè)試方法把覆蓋的路徑數(shù)壓縮到一定限度內(nèi),程序中的循環(huán)1.計(jì)算程序環(huán)路復(fù)雜性程序的環(huán)路復(fù)雜性給出了程序基本路徑集中的獨(dú)立路徑條數(shù),這是確保程序中每個(gè)可執(zhí)行語(yǔ)句至少執(zhí)行一次所必需的測(cè)試用例數(shù)目的上界。從控制流圖來看,一條獨(dú)立路徑是至少包含有一條在其它獨(dú)立路徑中從未有過的邊的路徑。計(jì)算公式:V(G)=e?n+2。其中,e為圖中邊的數(shù)目;n為節(jié)點(diǎn)數(shù)目。1.計(jì)算程序環(huán)路復(fù)雜性1.計(jì)算程序環(huán)路復(fù)雜性1.計(jì)算程序環(huán)路復(fù)雜性2.確定線性獨(dú)立路徑的基本集合2.確定線性獨(dú)立路徑的基本集合從源節(jié)點(diǎn)(控制流圖的入口點(diǎn))開始,一直走到匯節(jié)點(diǎn)(控制流圖的出口點(diǎn))。該路徑作為基線路徑。接下來,重新回溯基線路徑,依次“翻轉(zhuǎn)”在判斷節(jié)點(diǎn)上原來選擇的路徑。即當(dāng)遇到節(jié)點(diǎn)的出度大于等于2時(shí),必須選擇不同的邊。重復(fù)以上過程,直到得到的路徑數(shù)目等于V(G)注意:如果存在循環(huán),只能經(jīng)過一次,否則路徑存在冗余;第二,獨(dú)立路徑的基本集合可能不唯一,但集合中路徑的數(shù)目是唯一的。2.確定線性獨(dú)立路徑的基本集合2.確定線性獨(dú)立路徑的基本集合導(dǎo)出測(cè)試用例,確保基本路徑集中的每一條路徑的執(zhí)行。根據(jù)判斷結(jié)點(diǎn)給出的條件,選擇適當(dāng)?shù)臄?shù)據(jù)以保證某一條路徑可以被測(cè)試到—用邏輯覆蓋方法。每個(gè)測(cè)試用例執(zhí)行之后,與預(yù)期結(jié)果進(jìn)行比較。如果所有測(cè)試用例都執(zhí)行完畢,則可以確信程序中所有的可執(zhí)行語(yǔ)句至少被執(zhí)行了一次。必須注意,一些獨(dú)立的路徑,往往不是完全孤立的,有時(shí)它是程序正常的控制流的一部分,這時(shí),這些路徑的測(cè)試可以是另一條路徑測(cè)試的一部分。3.導(dǎo)出測(cè)試用例導(dǎo)出測(cè)試用例,確保基本路徑集中的每一條路徑的執(zhí)行。3.導(dǎo)出測(cè)舉例舉例例如,在圖示的控制流圖中,一組獨(dú)立的路徑是:
Path1:(A,B,C,B,E,F,G)Path2:(A,D,E,F,G)Path3:(A,B,E,F,G)Path4:(A,B,C,G)Path5:(A,D,F,G)路徑path1,path2,path3,path4,path5組成了控制流圖的一個(gè)基本路徑集。舉例例如,在圖示的控制流圖中,一組獨(dú)立的路徑是:
Path1:(
也叫功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,被測(cè)軟件看作一個(gè)不透明的黑盒子,在軟件接口處進(jìn)行,完成功能的驗(yàn)證。
黑盒測(cè)試完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性。
黑盒測(cè)試黑盒測(cè)試技術(shù)基于需求的測(cè)試也叫功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,被測(cè)軟件看作黑盒測(cè)試方法是在程序接口上進(jìn)行測(cè)試,主要是為了發(fā)現(xiàn)以下錯(cuò)誤:
是否有不正確或遺漏了的功能?
在接口上,輸入能否正確地接受?能否輸出正確的結(jié)果?
是否有數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤或外部信息(例如數(shù)據(jù)文件)訪問錯(cuò)誤?
性能上是否能夠滿足要求?
是否有初始化或終止性錯(cuò)誤?
黑盒測(cè)試黑盒測(cè)試方法是在程序接口上進(jìn)行測(cè)試,主要是為了發(fā)現(xiàn)以下錯(cuò)誤:假設(shè)一個(gè)程序P有輸入量X和Y及輸出量Z。在字長(zhǎng)為32位的計(jì)算機(jī)上運(yùn)行。若X、Y取整數(shù),按黑盒方法進(jìn)行窮舉測(cè)試:可能采用的測(cè)試數(shù)據(jù)組:232×232=264
如果測(cè)試一組數(shù)據(jù)需要1毫秒,一年工作365×24小時(shí),完成所有測(cè)試需5億年。用黑盒測(cè)試發(fā)現(xiàn)程序中的錯(cuò)誤,必須在所有可能的輸入條件和輸出條件中確定測(cè)試數(shù)據(jù),來檢查程序是否都能產(chǎn)生正確的輸出。但這是不可能的。黑盒測(cè)試的局限性假設(shè)一個(gè)程序P有輸入量X和Y及輸出量Z。在字長(zhǎng)為32位的計(jì)算等價(jià)類劃分方法邊界值分析方法狀態(tài)測(cè)試方法黑盒測(cè)試方法等價(jià)類劃分方法黑盒測(cè)試方法等價(jià)類劃分是一種典型的黑盒測(cè)試方法,使用這一方法時(shí),完全不考慮程序的內(nèi)部結(jié)構(gòu),只依據(jù)程序的規(guī)格說明來設(shè)計(jì)測(cè)試用例。等價(jià)類劃分方法把所有可能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分,然后從每一部分中選取少數(shù)有代表性的數(shù)據(jù)做為測(cè)試用例。使用這一方法設(shè)計(jì)測(cè)試用例要經(jīng)歷劃分等價(jià)類(列出等價(jià)類表)和選取測(cè)試用例兩步。等價(jià)類劃分方法等價(jià)類劃分是一種典型的黑盒測(cè)試方法,使用這一方法時(shí),完全不考1.劃分等價(jià)類
等價(jià)類是指某個(gè)輸入域的子集合。在該子集合中,各個(gè)輸入數(shù)據(jù)對(duì)于揭露程序中的錯(cuò)誤都是等效的。測(cè)試某等價(jià)類的代表值就等價(jià)于對(duì)這一類其它值的測(cè)試。
1.劃分等價(jià)類1.劃分等價(jià)類
等價(jià)類是指某個(gè)輸入域的子集合。在該子集合中等價(jià)類的劃分有兩種不同的情況:
①有效等價(jià)類:是指對(duì)于程序的規(guī)格說明來說,是合理的,有意義的輸入數(shù)據(jù)構(gòu)成的集合。 ②無效等價(jià)類:是指對(duì)于程序的規(guī)格說明來說,是不合理的,無意義的輸入數(shù)據(jù)構(gòu)成的集合。在設(shè)計(jì)測(cè)試用例時(shí),要同時(shí)考慮有效等價(jià)類和無效等價(jià)類的設(shè)計(jì)。1.劃分等價(jià)類等價(jià)類的劃分有兩種不同的情況:
①有效等價(jià)類:是指對(duì)于程序劃分等價(jià)類等價(jià)類的原則
(1)如果輸入條件規(guī)定了取值范圍,或值的個(gè)數(shù),則可以確立一個(gè)有效等價(jià)類和兩個(gè)無效等價(jià)類。
劃分等價(jià)類的原則劃分等價(jià)類等價(jià)類的原則
(1)如果輸入條件規(guī)定了取值范圍,例如,在程序的規(guī)格說明中,對(duì)輸入條件有一句話:
“……項(xiàng)數(shù)可以從1到999……”
則有效等價(jià)類是“1≤項(xiàng)數(shù)≤999”兩個(gè)無效等價(jià)類是“項(xiàng)數(shù)<1”或“項(xiàng)數(shù)>999”。在數(shù)軸上表示成:劃分等價(jià)類的原則例如,在程序的規(guī)格說明中,對(duì)輸入條件有一句話:劃分等價(jià)類的原
例如,在Pascal語(yǔ)言中對(duì)變量標(biāo)識(shí)符規(guī)定為“以字母打頭的……串”。那么所有以字母打頭的構(gòu)成有效等價(jià)類,而不在此集合內(nèi)(不以字母打頭)的歸于無效等價(jià)類。
劃分等價(jià)類的原則劃分等價(jià)類等價(jià)類的原則
(2)如果輸入條件規(guī)定了輸入值的集合,或者是規(guī)定了“必須如何”的條件,這時(shí)可確立一個(gè)有效等價(jià)類和一個(gè)無效等價(jià)類。 劃分等價(jià)類的原則劃分等價(jià)類等價(jià)類的原則
(2)如果輸入條
劃分等價(jià)類的原則劃分等價(jià)類等價(jià)類的原則
(3)如果輸入條件是一個(gè)布爾量,則可以確定一個(gè)有效等價(jià)類和一個(gè)無效等價(jià)類。劃分等價(jià)類等價(jià)類的原則
(4)如果規(guī)定了輸入數(shù)據(jù)的一組值,而且程序要對(duì)每個(gè)輸入值分別進(jìn)行處理。這時(shí)可為每一個(gè)輸入值確立一個(gè)有效等價(jià)類,此外針對(duì)這組值確立一個(gè)無效等價(jià)類,它是所有不允許的輸入值的集合。
劃分等價(jià)類的原則劃分等價(jià)類等價(jià)類的原則
(3)如果輸入條例如,在教師上崗方案中規(guī)定對(duì)教授、副教授、講師和助教分別計(jì)算分?jǐn)?shù),做相應(yīng)的處理。因此可以確定4個(gè)有效等價(jià)類為教授、副教授、講師和助教,一個(gè)無效等價(jià)類,它是所有不符合以上身分的人員的輸入值的集合。
劃分等價(jià)類的原則例如,在教師上崗方案中規(guī)定對(duì)教授、副教授、講師和助教分別計(jì)算劃分等價(jià)類等價(jià)類的原則
(5)如果規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則,則可以確立一個(gè)有效等價(jià)類(符合規(guī)則)和若干個(gè)無效等價(jià)類(從不同角度違反規(guī)則)。劃分等價(jià)類的原則例如,Pascal語(yǔ)言規(guī)定“一個(gè)語(yǔ)句必須以分號(hào)‘;’結(jié)束”。這時(shí),可以確定一個(gè)有效等價(jià)類“以‘;’結(jié)束”,若干個(gè)無效等價(jià)類“以‘:’結(jié)束”、“以‘,’結(jié)束”、“以‘’結(jié)束”、“以LF結(jié)束”等。劃分等價(jià)類等價(jià)類的原則
(5)如果規(guī)定了輸入數(shù)據(jù)必須遵守2.確立測(cè)試用例
在確立了等價(jià)類之后,建立等價(jià)類表,列出所有劃分出的等價(jià)類。2.確立測(cè)試用例2.確立測(cè)試用例
在確立了等價(jià)類之后,建立等價(jià)類表,列出所再?gòu)膭澐殖龅牡葍r(jià)類中按以下原則選擇測(cè)試用例:
(1)為每一個(gè)等價(jià)類規(guī)定一個(gè)唯一編號(hào);
(2)設(shè)計(jì)一個(gè)新的測(cè)試用例,使其盡可能多地覆蓋尚未被覆蓋的有效等價(jià)類,重復(fù)這一步,直到所有的有效等價(jià)類都被覆蓋為止;
(3)設(shè)計(jì)一個(gè)新的測(cè)試用例,使其僅覆蓋一個(gè)尚未被覆蓋的無效等價(jià)類,重復(fù)這一步,直到所有的無效等價(jià)類都被覆蓋為止。2.確立測(cè)試用例再?gòu)膭澐殖龅牡葍r(jià)類中按以下原則選擇測(cè)試用例:
(1)為每一用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例舉例:計(jì)算兩個(gè)1-100之間的整數(shù)的和。1.劃分等價(jià)類用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例舉例:計(jì)算兩個(gè)1-100之間用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例舉例:計(jì)算兩個(gè)1-100之間的整數(shù)的和。1.劃分等價(jià)類用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例舉例:計(jì)算兩個(gè)1-100之間用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例舉例:計(jì)算兩個(gè)1-100之間的整數(shù)的和。2.設(shè)計(jì)測(cè)試用例用例編號(hào)所屬等價(jià)類加數(shù)1加數(shù)2和UC012(有效等價(jià)類)25631UC021(無效等價(jià)類)0-1提示請(qǐng)輸入1-100間整數(shù)UC033(無效等價(jià)類)110101UC044(無效等價(jià)類)1.23.2UC055(無效等價(jià)類)ABUC066(無效等價(jià)類)@#UC077(無效等價(jià)類)空格空格UC088(無效等價(jià)類)…………………………用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例舉例:計(jì)算兩個(gè)1-100之間
另一個(gè)用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例
在某一PASCAL語(yǔ)言版本中規(guī)定:“標(biāo)識(shí)符是由字母開頭,后跟字母或數(shù)字的任意組合構(gòu)成。有效字符數(shù)為8個(gè),最大字符數(shù)為80個(gè)。” 并且規(guī)定:“標(biāo)識(shí)符必須先說明,再使用?!薄霸谕徽f明語(yǔ)句中,標(biāo)識(shí)符至少必須有一個(gè)。”
另一個(gè)用等價(jià)類劃分法設(shè)計(jì)測(cè)試用例的實(shí)例
在某一PASCAL用等價(jià)類劃分的方法,建立輸入等價(jià)類表:用等價(jià)類劃分的方法,建立輸入等價(jià)類表:下面選取了9個(gè)測(cè)試用例,它們覆蓋了所有的等價(jià)類。
①VAR
x,T1234567:REAL;
BEGIN
x:=3.414;
T1234567:=2.732;
...…(1),(2),(4),(8),(9),(12),(14)
②VAR
:REAL;
(3)
③VAR
x,:REAL;(5)
下面選取了9個(gè)測(cè)試用例,它們覆蓋了所有的等價(jià)類。
①VA④VART12345678:REAL;
(6)⑤VART12345......:REAL;
(7)
多于80個(gè)字符⑥VART$:CHAR;
(10)⑦VARGOTO:INTEGER;
(11)⑧VAR2T:REAL;
(13)⑨VARPAR:REAL;
(15)
BEGIN......
PAP:=SIN(3.14*0.8)/6;
④VART12345678:REAL;(6)邊界值分析也是一種黑盒測(cè)試方法,是對(duì)等價(jià)類劃分方法的補(bǔ)充。人們從長(zhǎng)期的測(cè)試工作經(jīng)驗(yàn)得知,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是在輸入范圍的內(nèi)部。因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤。
邊界值分析方法邊界值分析也是一種黑盒測(cè)試方法,是對(duì)等價(jià)類劃分方法的補(bǔ)充。邊比如,在做三角形計(jì)算時(shí),要輸入三角形的三個(gè)邊長(zhǎng):A、B和C。我們應(yīng)注意到這三個(gè)數(shù)值應(yīng)當(dāng)滿足
A>0、B>0、C>0、
A+B>C、A+C>B、B+C>A,才能構(gòu)成三角形。但如果把六個(gè)不等式中的任何一個(gè)大于號(hào)“>”錯(cuò)寫成大于等于號(hào)“≥”,那就不能構(gòu)成三角形。問題恰出現(xiàn)在容易被疏忽的邊界附近。舉例比如,在做三角形計(jì)算時(shí),要輸入三角形的三個(gè)邊長(zhǎng):A、B和C。這里所說的邊界是指,相當(dāng)于輸入等價(jià)類和輸出等價(jià)類而言,稍高于其邊界值及稍低于其邊界值的一些特定情況。使用邊界值分析方法設(shè)計(jì)測(cè)試用例,首先應(yīng)確定邊界情況。應(yīng)當(dāng)選取正好等于,剛剛大于,或剛剛小于邊界的值做為測(cè)試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值做為測(cè)試數(shù)據(jù)。
邊界值分析方法這里所說的邊界是指,相當(dāng)于輸入等價(jià)類和輸出等價(jià)類而言,稍高于狀試態(tài)測(cè)由于在黑盒測(cè)試階段,程序內(nèi)部的邏輯結(jié)構(gòu)是無從得知的,因此只能通過對(duì)狀態(tài)的測(cè)試間接地加以驗(yàn)證。軟件狀態(tài)(softwarestate)是指軟件當(dāng)前所處的條件或者模式。通常,訪問所有的狀態(tài)是可以實(shí)現(xiàn)的,但除了極少數(shù)簡(jiǎn)單程序外,不可能以走完所有分支的方式來達(dá)到每種狀態(tài),即必須選擇重要的內(nèi)容進(jìn)行測(cè)試。狀試態(tài)測(cè)由于在黑盒測(cè)試階段,程序內(nèi)部的邏輯結(jié)構(gòu)是無從得知的,建立狀態(tài)轉(zhuǎn)換圖標(biāo)識(shí)出軟件可能進(jìn)入的每一種獨(dú)立狀態(tài)。找出從一種狀態(tài)轉(zhuǎn)入另一種狀態(tài)所需的輸入和條件。找出進(jìn)入或退出某種狀態(tài)時(shí)的設(shè)置條件及輸出結(jié)果。建立狀態(tài)轉(zhuǎn)換圖標(biāo)識(shí)出軟件可能進(jìn)入的每一種獨(dú)立狀態(tài)。根據(jù)狀態(tài)轉(zhuǎn)換圖設(shè)計(jì)測(cè)試用例每種狀態(tài)至少訪問一次測(cè)試看起來是最常見和最普遍的狀態(tài)轉(zhuǎn)換測(cè)試狀態(tài)之間最不常用的分支測(cè)試所有錯(cuò)誤狀態(tài)及其返回值測(cè)試狀態(tài)的隨機(jī)轉(zhuǎn)換根據(jù)狀態(tài)轉(zhuǎn)換圖設(shè)計(jì)測(cè)試用例每種狀態(tài)至少訪問一次靜態(tài)分析方法不實(shí)際運(yùn)行程序,通過檢查和閱讀等手段來發(fā)現(xiàn)錯(cuò)誤并評(píng)估代碼質(zhì)量的軟件測(cè)試技術(shù)。作用通過對(duì)代碼標(biāo)準(zhǔn)及質(zhì)量的監(jiān)控提高代碼可靠性盡可能早地通過對(duì)源代碼的檢查發(fā)現(xiàn)缺陷組織代碼審核定位易產(chǎn)生錯(cuò)誤的模塊非常有效的質(zhì)量保證手段越來越多地被采用靜態(tài)分析方法不實(shí)際運(yùn)行程序,通過檢查和閱讀等手段來發(fā)現(xiàn)錯(cuò)誤并通用評(píng)審過程
評(píng)審過程就是執(zhí)行靜態(tài)分析的過程。IEEEStandardforSoftwareReviewsandAudits定義了以下6個(gè)步驟:1、計(jì)劃2、概述3、準(zhǔn)備4、評(píng)審會(huì)議5、返工6、跟蹤通用評(píng)審過程評(píng)審過程就是執(zhí)行靜態(tài)分析的過程。IEE靜態(tài)分析的主要內(nèi)容檢查需求檢查設(shè)計(jì)檢查代碼其他10%軟件產(chǎn)品說明書(需求)56%編寫代碼7%設(shè)計(jì)27%軟件缺陷產(chǎn)生的原因分布靜態(tài)分析的主要內(nèi)容檢查需求軟件產(chǎn)品說明書(需求)設(shè)計(jì)27%軟檢查需求需求的標(biāo)準(zhǔn)完整性是否完整描述一個(gè)功能正確性是否正確反應(yīng)客戶要求可行性必要性Goldplating?無二義性會(huì)引起歧義嗎可驗(yàn)證性測(cè)試用例怎么寫?實(shí)施無關(guān)性需求規(guī)格說明的標(biāo)準(zhǔn)完整性是否包含所有需求FURPS一致性相互矛盾重復(fù)檢查需求需求的標(biāo)準(zhǔn)需求規(guī)格說明的標(biāo)準(zhǔn)需求檢查練習(xí)例1產(chǎn)品必須在固定的時(shí)間間隔內(nèi)提供狀態(tài)信息,并且每次時(shí)間間隔不得小于60秒。完整嗎?清晰嗎?例2分析程序應(yīng)該能生成HTML標(biāo)記錯(cuò)誤的報(bào)告,從而使HTML初學(xué)者可以用它來快速排錯(cuò)。是否有歧義?可驗(yàn)證嗎?例3如果可能的話,應(yīng)當(dāng)根據(jù)系統(tǒng)貨物編號(hào)列表,在線確認(rèn)輸入的貨物編號(hào)?!叭绻赡艿脑挕笔鞘裁匆馑??需求檢查練習(xí)例1產(chǎn)品必須在固定的時(shí)間間隔內(nèi)提供狀態(tài)信息,并需求檢查練習(xí)例4產(chǎn)品不應(yīng)該提供將帶來災(zāi)難性后果的查找和替換選擇。真正的需求是什么?例5系統(tǒng)對(duì)標(biāo)準(zhǔn)XYZ1.4.1的支持是可選的。有歧義嗎?例6當(dāng)用戶選擇“緊湊內(nèi)存”選項(xiàng)時(shí),程序通過Huffman解析矩陣方法將郵件列表數(shù)據(jù)壓縮到相應(yīng)的大小??蓽y(cè)嗎?代碼無關(guān)嗎?需求檢查練習(xí)例4產(chǎn)品不應(yīng)該提供將帶來災(zāi)難性后果的查找和替換規(guī)格說明用語(yǔ)清單絕對(duì)的肯定總是、每一種、所有、沒有、從不注意隱含的假設(shè)當(dāng)然、因此、顯然、必然模棱兩可的詞某些、有時(shí)、常常、通常、經(jīng)常、太多、幾乎不可測(cè)的描述良好、迅速、廉價(jià)、高效、穩(wěn)定隱藏的需求已處理、已拒絕、已忽略、已消除缺少的分支如果…那么…(沒有“否則…”分支)規(guī)格說明用語(yǔ)清單絕對(duì)的肯定檢查設(shè)計(jì)在編碼開始前進(jìn)行檢查功能設(shè)計(jì)說明,消除歧義功能的用意、總體位置輸入、輸出可能的錯(cuò)誤/例外接口定義交互細(xì)節(jié)實(shí)施建議檢查設(shè)計(jì)在編碼開始前進(jìn)行檢查代碼通過檢查代碼發(fā)現(xiàn)模塊中的錯(cuò)誤通過代碼檢查能夠發(fā)現(xiàn)大部分的錯(cuò)誤檢查代碼通過檢查代碼發(fā)現(xiàn)模塊中的錯(cuò)誤通過代碼檢查能夠發(fā)現(xiàn)大部靜態(tài)分析的類型同事審查走查審查靜態(tài)分析的類型同事審查同事審查同事審查是一種非正式的評(píng)審,但也應(yīng)遵循上面介紹的評(píng)審流程。適用于初次審查,是要求最低的正式方法,也稱為伙伴審查。同事審查常常僅在編寫代碼或設(shè)計(jì)體系結(jié)構(gòu)的程序員,以及充當(dāng)審查者的其他一兩個(gè)程序員和測(cè)試員之間進(jìn)行。同事審查同事審查是一種非正式的評(píng)審,但也應(yīng)遵循上面介紹的評(píng)審走查(Walkthrough)開發(fā)組內(nèi)部進(jìn)行的采用講解、討論和模擬運(yùn)行的方式查找錯(cuò)誤的活動(dòng)限時(shí)-避免跑題參加人員經(jīng)驗(yàn)豐富的開發(fā)人員和本模塊相關(guān)的開發(fā)人員本項(xiàng)目組的新人由本模塊的開發(fā)者進(jìn)行講解、回答問題并記錄不要現(xiàn)場(chǎng)修改檢查要點(diǎn)邏輯錯(cuò)誤代碼標(biāo)準(zhǔn)/規(guī)范/風(fēng)格走查(Walkthrough)開發(fā)組內(nèi)部進(jìn)行的審查(Inspection)開發(fā)組、測(cè)試組和相關(guān)人員(QA、產(chǎn)品經(jīng)理等)聯(lián)合進(jìn)行。采用講解、提問并使用Checklist方式進(jìn)行的查找錯(cuò)誤的活動(dòng)。以會(huì)議的形式,制定目標(biāo)、流程、規(guī)則和結(jié)果報(bào)告。相關(guān)資料要在會(huì)議前下發(fā)并閱讀。參加人員經(jīng)驗(yàn)豐富的開發(fā)人員和本模塊相關(guān)的開發(fā)人員測(cè)試組和相關(guān)人員審查(Inspection)開發(fā)組、測(cè)試組和相關(guān)人員(QA、審查(Inspection)由另外一名開發(fā)者進(jìn)行講解、其他開發(fā)者主要按照Checklist進(jìn)行提問并填表、本模塊開發(fā)者回答問題并記錄不要現(xiàn)場(chǎng)修改檢查要點(diǎn)設(shè)計(jì)需求代碼標(biāo)準(zhǔn)/規(guī)范/風(fēng)格文檔的完整性和一致性審查(Inspection)由另外一名開發(fā)者進(jìn)行講解、其他開通用代碼審查清單1、數(shù)據(jù)引用錯(cuò)誤。2、數(shù)據(jù)聲明錯(cuò)誤。3、計(jì)算錯(cuò)誤。4、比較錯(cuò)誤。5、控制流程錯(cuò)誤。6、子程序參數(shù)錯(cuò)誤。7、輸入/輸出錯(cuò)誤。8、其他檢查。如:字符集、移植性、兼容性等。通用代碼審查清單1、數(shù)據(jù)引用錯(cuò)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度綠色建筑節(jié)能改造項(xiàng)目設(shè)計(jì)咨詢服務(wù)合同4篇
- 2025年移動(dòng)通信網(wǎng)絡(luò)優(yōu)化服務(wù)合同范本
- 2025年度鋁扣板吊頂施工與維護(hù)一體化服務(wù)合同協(xié)議
- 2025游泳館會(huì)員卡年度健康體檢及運(yùn)動(dòng)康復(fù)服務(wù)協(xié)議3篇
- 2025年度凈身出戶離婚協(xié)議書模板與婚姻律師團(tuán)隊(duì)全程支持服務(wù)協(xié)議3篇
- 上海建筑工地勞務(wù)合作協(xié)議樣書
- 2025年度個(gè)人物流運(yùn)輸承包合同范本2篇
- 2025年度私立學(xué)校教師聘用合同范本(創(chuàng)新教育版)
- 二零二五年度臨時(shí)保安服務(wù)與突發(fā)事件應(yīng)急預(yù)案合同6篇
- 2025年度門頭環(huán)保材料采購(gòu)與應(yīng)用合同3篇
- 眼的解剖結(jié)構(gòu)與生理功能課件
- 小學(xué)網(wǎng)管的工作總結(jié)
- 2024年銀行考試-興業(yè)銀行筆試參考題庫(kù)含答案
- 泵站運(yùn)行管理現(xiàn)狀改善措施
- 2024屆武漢市部分學(xué)校中考一模數(shù)學(xué)試題含解析
- SYT 0447-2014《 埋地鋼制管道環(huán)氧煤瀝青防腐層技術(shù)標(biāo)準(zhǔn)》
- 浙教版七年級(jí)下冊(cè)科學(xué)全冊(cè)課件
- 弧度制及弧度制與角度制的換算
- 瓦楞紙箱計(jì)算公式測(cè)量方法
- DB32-T 4004-2021水質(zhì) 17種全氟化合物的測(cè)定 高效液相色譜串聯(lián)質(zhì)譜法-(高清現(xiàn)行)
- DB15T 2724-2022 羊糞污收集處理技術(shù)規(guī)范
評(píng)論
0/150
提交評(píng)論