探討測試用例設計的六大思路
有這樣一個面試題:在一個Web測試頁面上,有一個輸入框,一個計數器(count)按鈕,用於計算一個文字字串中字母a出現的個數。請設計一系列測試用例用以測試這個Web頁面。
有經驗的測試人員可能會問面試官,字母a區分大小寫嗎?只統計英文字母的a嗎?最長輸入字元是多少,最少輸入字元是多少?對輸入的字元型別是否有限制,是否會自動清除不符合要求的字元?
所以第一步應該是明確需求,然後我們才開始進行思考如何設計測試用例。
通常說來,我們考慮一個測試物件的時候至少從以下六方面來考慮:
1.功能性
2.相容性
3.易用性
4.可靠性
5.效能
6.安全
1.從功能方面考慮:
輸入:" "(思路:什麼都不輸入)
輸入:"null"(思路:特殊值)
輸入:"Aa"(思路:輸入字元既含大寫字元也有小寫)
輸入:"abc"(思路:以a開頭)
輸入:"cac"(思路:a在中間)
輸入:"aba"(思路:以a開頭,以a結尾)
輸入:" ba"(思路:以空格開頭含a)
輸入:"中ba"(思路:以中文或者其他字元開頭含a)
輸入:"AAaa"(思路:輸入字元僅僅只有大寫A和小寫a)
輸入:"全形和半形a"(思路:考慮半形和全形符號)
2.從相容性方面考慮:
1.各個瀏覽器 顯示是否正確,點選按鈕是否有效;
2.瀏覽器各個版本顯示是否正確,點選按鈕是否有效;
3.是否支援手機端和平板端。
3.從易用性方面考慮:
1.web介面外觀,風格是否合適;
2.文字輸入框長度是否合適,是否應該預設提示如何輸入;
3.輸入錯誤時提示是否友好;
4.考慮該應用是否支援其他語言。
4.從可靠性和效能方面考慮:
1.輸入HTML和JavaScript相關標籤字元,計算是否正確,是否會破壞頁面;
2.這個應用能否在同一臺伺服器上執行多個例項,多個使用者同時使用是否會有問題;
3.在大併發下使用,計算速度是否滿足要求。
5.從安全性方面考慮:
1.輸入的資料是否會被儲存,輸入字串可能包含敏感資訊;
2.嘗試複製/貼上字串;
3.嘗試快速點選多次計算按鈕;
4.考慮是否有安全漏洞,點選計算按鈕,請求是否會被擷取,導致返回失敗。
主攻測開及介面自動化方向,分享爬蟲獲取的稀缺精品資源,歡迎關注微信獲取。