軟件測試技術(shù)之功能測試方法
功能測試的問(wèn)題 軟件測試
12、操作數與操作符不符
12.1缺陷產(chǎn)生原因
幾乎每個(gè)運算符都有它無(wú)效的操作數,對于具體的操作符,開(kāi)發(fā)人員在使用它們時(shí),必須編寫(xiě)錯誤檢查代碼。例如:除以零的問(wèn)題。
12.2如何發(fā)現這類(lèi)問(wèn)題
找到程序中包含的數據或輸入(即操作數)的計算(即操作符)、數學(xué)表達式(即操作符和操作數的組合)及對圖形的操作。另外,對多個(gè)操作數進(jìn)行組合也更容易發(fā)生錯誤。例如,字符和數字都可以使用“+”操作符。對字符通過(guò)“+”把它們連成一串;對數字通過(guò)“+”來(lái)進(jìn)行加法運算。如果系統嘗試把字符和數字相加,即進(jìn)行相互矛盾的操作,就會(huì )引起軟件失效。
12.3測試方法小結
◆應用場(chǎng)合:需要進(jìn)行數值計算的程序或圖形操作的程序。
◆測試方法:對于數值計算考慮操作數和操作符之間的限定關(guān)系,對于圖形計算還要考慮各種輸入數據之間的組合關(guān)系。
◆測試知識儲備:全面掌握被測軟件中操作符對操作數的要求。掌握不同的操作符和操作數具有的不同的有效和無(wú)效的取值范圍。
---------------------------------------------------------------------------------------------------
13、遞歸調用自身
13.1缺陷產(chǎn)生原因
函數有時(shí)會(huì )遞歸調用自身,如果不限制執行次數,遞歸就會(huì )出現問(wèn)題,它不斷地調用自身,很快地占用機器資源,最終產(chǎn)生溢出,使程序崩潰或掛起。產(chǎn)生這類(lèi)問(wèn)題的主要原因是開(kāi)發(fā)人員沒(méi)有編碼來(lái)保證循環(huán)和遞歸調用的終止,通常是在循環(huán)的開(kāi)始或結束時(shí)缺少檢查條件。
13.2如何發(fā)現問(wèn)題
在軟件中尋找可以使用遞歸調用的功能。這時(shí)可以制作一個(gè)列表,標明軟件中可能嵌入遞歸的功能的列表,然后自己引用自己來(lái)檢查程序是否能正確處理。
13.3測試方法小結
◆應用場(chǎng)合:需要和其它對象進(jìn)行交互的地方。
◆測試方法:考慮對象的自我交互或復制。
◆測試知識儲備:全面掌握被測軟件的需求。
14、計算結果溢出
14.1缺陷產(chǎn)生原因
當所有的輸入和數據都有效時(shí),計算的最終結果也可以是無(wú)效的。所有變量都有值域范圍,有時(shí)開(kāi)發(fā)人員在執行計算時(shí)會(huì )忘記檢查這些上限。
14.2如何發(fā)現這類(lèi)問(wèn)題
一次又一次地執行計算或使用很大或很小的輸入和數據進(jìn)行計算,重點(diǎn)測試數據類(lèi)型的初始值或邊界值附近的值。
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/