山東軍隊(duì)文職招聘考試網(wǎng)計(jì)算機(jī)常識(shí)-靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試 - 常識(shí)判斷

山東軍隊(duì)文職招聘考試網(wǎng)計(jì)算機(jī)常識(shí)-靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試減小字體增大字體山東軍隊(duì)文職招聘考試網(wǎng)計(jì)算機(jī)常識(shí)-靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試

(1)靜態(tài)測(cè)試

靜態(tài)測(cè)試包括代碼檢查、表態(tài)結(jié)構(gòu)分析、代碼質(zhì)量度量等。靜態(tài)測(cè)試可以由人工進(jìn)行,充分發(fā)揮人的邏輯思維優(yōu)勢(shì),也可以借助軟件工具自動(dòng)進(jìn)行。經(jīng)驗(yàn)表明,使用人工測(cè)試能夠有效地發(fā)現(xiàn)30%到70%的邏輯設(shè)計(jì)和編碼錯(cuò)誤。

代碼檢查主要檢查代碼和設(shè)計(jì)的一致性,包括代碼的邏輯表達(dá)的正確性,代碼結(jié)構(gòu)的合理性等方面。這項(xiàng)工作可以發(fā)現(xiàn)違背程序編寫(xiě)標(biāo)準(zhǔn)的部下,程序中不安全、不明確和模糊的部分,找出程序中不可移植部分、違背程序編程風(fēng)格的問(wèn)題,包括變量檢查、命名和類(lèi)型審查、程序邏輯審查、程序語(yǔ)法檢查和程序結(jié)構(gòu)檢查等內(nèi)容。代碼檢查包括代碼審查、代碼走查、桌面檢查、靜態(tài)分析等具體方式。

代碼審查:小組集體閱讀、講座檢查代碼。

代碼走查:小組成員通過(guò)用腦研究、執(zhí)行程序來(lái)檢查代碼。

山東軍隊(duì)文職招聘考試網(wǎng)計(jì)算機(jī)常識(shí)-白盒測(cè)試方法與測(cè)試用例設(shè)計(jì) - 常識(shí)判斷

山東軍隊(duì)文職招聘考試網(wǎng)計(jì)算機(jī)常識(shí)-白盒測(cè)試方法與測(cè)試用例設(shè)計(jì)減小字體增大字體山東軍隊(duì)文職招聘考試網(wǎng)計(jì)算機(jī)常識(shí)-白盒測(cè)試方法與測(cè)試用例設(shè)計(jì)

白盒測(cè)試方法也稱(chēng)結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試。它是根據(jù)軟件產(chǎn)品的內(nèi)部工作過(guò)程,檢查內(nèi)部萬(wàn)分,以確認(rèn)每種內(nèi)部操作符合設(shè)計(jì)規(guī)格要求。白盒測(cè)試把測(cè)試對(duì)象看作一個(gè)打開(kāi)的盒子,允許測(cè)試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有送信息來(lái)設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有的邏輯路徑進(jìn)行測(cè)試。通過(guò)在不同點(diǎn)檢查程序的狀態(tài)來(lái)了解實(shí)際的運(yùn)行狀態(tài)是否與預(yù)期的一致。所以,白盒測(cè)試是在程序內(nèi)部進(jìn)行,主要用于完成軟件內(nèi)部操作的驗(yàn)證。

白盒測(cè)試的基本原則是:保證所測(cè)模塊中每一獨(dú)立路徑至少執(zhí)行一次;保證所測(cè)模塊所有判斷的每一分支至少執(zhí)行一次;保證所測(cè)模塊每一循環(huán)都在邊界條件和一般條件下至少各執(zhí)行一次;驗(yàn)證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性。

按照白盒測(cè)試的基本原則,白盒法是窮舉路徑測(cè)試。在使用這一方案時(shí),測(cè)試者必須檢查程序的內(nèi)部結(jié)構(gòu),從檢查程序的邏輯著手,得出測(cè)試數(shù)據(jù)。貫穿程序的獨(dú)立路徑數(shù)是天文數(shù)字,但即使每條路徑都測(cè)試了仍然可能有錯(cuò)誤。第一,窮舉路徑測(cè)試決不能查出程序是否違反了設(shè)計(jì)規(guī)范,即程序本身是個(gè)錯(cuò)誤的程序;第二,窮舉路徑測(cè)試不可能查出程序中因遺漏路徑而出錯(cuò);第三,窮舉路徑測(cè)試可能發(fā)現(xiàn)不了一些與數(shù)據(jù)相關(guān)的錯(cuò)誤。

白盒測(cè)試的主要方法有邏輯覆蓋、基本路徑測(cè)試等。

(1)邏輯覆蓋測(cè)試

邏輯覆蓋是泛指一系列以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的測(cè)試用例設(shè)計(jì)技術(shù)。通常所指的程序中的邏輯表示有判斷、分支、條件等幾種表示方式。

○1語(yǔ)句覆蓋。選擇足夠的測(cè)試用例,使得程序中每個(gè)語(yǔ)句至少都能被執(zhí)行一次。

例3.1設(shè)有程序流程圖表示的程序如圖3.24

測(cè)試用例1:

輸入

(i,j)輸出

(i,j,x)

(10,10)(10,10,10)

測(cè)試用例2:

輸入

(i,j)輸出

(i,j,x)

(10,15)(10,15,15)

語(yǔ)句覆蓋是邏輯覆蓋中基本的覆蓋,尤其對(duì)單元測(cè)試來(lái)說(shuō)。但是語(yǔ)句覆蓋往往沒(méi)有關(guān)注判斷中的條件有可能隱含的錯(cuò)誤。

○2路徑覆蓋。執(zhí)行足夠的測(cè)試用例,使程序中所有可能的路徑都至少經(jīng)歷一次。

例3.2設(shè)有程序流程圖表示的程序如圖3.25

對(duì)圖3.25的程序設(shè)計(jì)如表3.2列出的一組測(cè)試用例,

就可以覆蓋該程序的全部4條路徑:ace,abd,abe,acd。

測(cè)試用例通過(guò)路徑測(cè)試用例通過(guò)路徑

[(A=2,B=0,X=3),輸出略](ace)[(A=2,B=1,X=1),輸出略](abe)

[(A=1,B=0,X=1),輸出略](abd)[(A=3,B=0,X=1),輸出略](acd)

○3判定覆蓋。使設(shè)計(jì)的測(cè)試用例保證程序中每個(gè)判斷的每個(gè)取值分支(T或F)至少經(jīng)歷一次。

根據(jù)判定覆蓋的要求,對(duì)如圖3.26所示的程序,如果其中包含條件ij的判斷為真值(即為T(mén))和為假值(即為F)的程序執(zhí)行路徑至少經(jīng)歷一次,仍然可以使用例3.1的測(cè)試用例1和測(cè)試用例2。

程序每個(gè)判斷中若存在多個(gè)聯(lián)立條件,僅保證判斷的真假值往往會(huì)導(dǎo)致某些單個(gè)條件的錯(cuò)誤不能被發(fā)現(xiàn)。例如,某判斷是X1或Y5,其中只要一個(gè)條件聯(lián)歡會(huì)為真,無(wú)論另一個(gè)條件是否錯(cuò)誤,判斷的結(jié)果都為真,這說(shuō)明,僅有判斷覆蓋還無(wú)法保證能查出在判斷的條件中的錯(cuò)誤,需要更強(qiáng)的邏輯覆蓋。

4條件覆蓋。設(shè)計(jì)的測(cè)試用例保證程序中每個(gè)判斷的生個(gè)條件的可能取值至少執(zhí)行一次。

例3.3設(shè)有程序流程圖表示的程序如圖3.26

按照條件覆蓋的測(cè)試要求,對(duì)圖3.26的程序判斷框中的條件ij和條件j5設(shè)計(jì)如下測(cè)試用例1和測(cè)試用例題,就能保證該條件取真值和取假值的情況至少執(zhí)行一次。

測(cè)試用例1

輸入

(i,j)輸出

(i,j,x)

(3,2)(3,2,3)

[1][2]下一頁(yè)

用戶(hù)名:!查看更多評(píng)論

分值:100分55分1分

內(nèi)容:!

通知管理員驗(yàn)證碼:點(diǎn)擊獲取驗(yàn)證碼