測試人員必學的軟件快速測試方法(三)

以下是測試專家James Whittaker在HTBS(How To Break Software)中以失敗模型爲基礎介紹的一些快速測試方法,這裏進行補充和調整,並同步更新到我們的測試知識共享庫中,使用時可靈活增刪改查。


嘗試各種輸入以觸發軟件的所有錯誤消息

軟件處理錯誤輸入的常見方式有三種:

1.輸入過濾:濾除錯誤的數據

2.輸入檢查:檢查輸入並報告錯誤

3.異常處理:當錯誤輸入產生故障時,異常處理代碼會捕獲異常並加以補救。

正確編寫以上代碼需周密思考和反覆測試,稍有不慎就可能引入缺陷 "

採用極限值測試、邊界值測試、非法值測試、壓力測試等方法來測試用戶輸入


強制讓軟件使用默認值

不同模塊由不同程序員編寫,他們可能期望不同的默認值 ,這種不一致性會導致錯誤

1.接受所有默認值,然後提交 

2.使用空值

3.將默認值改爲另一個值,然後再改回來

4.將默認值改爲另一個值,然後改爲空值"


探索允許的字符集和數據類型

常見問題:

1.字符集:有些軟件只支持特定編碼的字符集,輸入其他編碼的字符會導致錯誤 

2.編程語言:有些軟件會將用戶輸入作爲程序來執行,這導致了許多問題,如SQL注入

3.OS:OS會禁止創建一些特定名字的文件。一些軟件在西文OS上不能正確顯示中文字符

測試瞭解軟件、編程語言、實現技術、OS對字符集和數據的期望與限制,然後使用對它們而言具有特殊含義的字符串或數據進行***


令輸入緩衝區溢出

軟件未考慮輸入值超長、超大的情況,導致數值計算溢出或緩衝區溢出

常見測試想法:

1.輸入超長的字符串,字符串最好類似於“中文中文數字1234567中文...”有助於定位導致錯誤的長度

2.輸入極大值(針對加法和乘法計算)、負的極大值(針對減法計算)、很接近0的值(針對除法計算)等"


測試一組相關變量的取值組

當多個程序員共同開發一段代碼時,他們的代碼所產生的數值可能不能正常協作。

此外,程序員還會用複雜的嵌套if語句來檢查多個變量,這些代碼不容易編寫,更容易在維護時出錯。

測試人員通過調查軟件需求和實現,以識別真正相關的變量,它們通常屬於同一個數據結構或參與到同一項計算中。

然後,根據軟件使用它們的方式設計Case。

也可使用組合測試工具來產生Case


重複輸入多次

軟件可能不瞭解它在空間和時間上的限制,當重複操作耗盡其資源時,它會失敗

測試反覆執行一些消耗較多資源的操作,或反覆執行一些大量數據的操作。如,在測試在線商城時,測試持續向購物車中添加貨品,創建出一個包含許多商品的“超級訂單”。該訂單可能導致提交失敗,或令未來的訂單處理遇到困難。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章