測試方法
- 等價類
- 顯示功能需求
(1)等價類 ,是將所有可能的輸入數(shù)據(jù)劃分若干個子集,每個子集中,任意一個輸入數(shù)據(jù)對于發(fā)現(xiàn)程序中潛在錯誤,具有同等的效果,這樣的子集構(gòu)成一個等價類,后續(xù)只有從每個等價類中選取一個值進行測試,就可以用少量代表性數(shù)據(jù)測試取得較好的測試覆蓋結(jié)果
-
邊界類
(1)邊界值分析方法,是選取,輸入輸出的邊界值進行測試,因為常規(guī)大量的軟件錯誤時發(fā)生在輸入或者輸入范圍的邊界上,所以需要對邊界進行重點測試,通常選擇正好等于,大于,小于邊界的值作為測試數(shù)據(jù)
(2)從方法論來說,邊界值分析是對等價類劃分的補充,這兩種測試方法經(jīng)常結(jié)合起來使用
image.png
常見登錄頁面設計思路
- 常見類
- 輸入已注冊的用戶名和正確的密碼,驗證是否登錄成功
- 輸入已注冊的用戶名和不正確的密碼,驗證是否登錄失敗炬太,并且提示信息正確
- 輸入未注冊的用戶名和任意密碼屏富,驗證是否登錄失敗,并且提示信息正確
- 用戶名和密碼兩者都為空养叛,驗證是否登錄失敗种呐,并且提示信息正確
- 用戶名和密碼兩者之一為空,驗證是否登錄失敗弃甥,并且提示信息正確
- 如果登錄功能啟用了驗證碼功能爽室,在用戶名和密碼正確的前提下,輸入正確的驗證碼淆攻,驗證是否登錄成功
- 如果登錄功能啟用了驗證碼功能阔墩,在用戶名和密碼正確的前提下嘿架,輸入錯誤的驗證碼,驗證是否登錄失敗啸箫,并且提示信息正確
- 增強版 (拓展)
- 用戶名和密碼是否大小寫敏感
- 頁面上的密碼框是否加密顯示
- 后臺系統(tǒng)創(chuàng)建的用戶第一次登錄成功時耸彪,是否提示修改密碼
- 忘記用戶名和忘記密碼的功能是否可用
- 前端頁面是否根據(jù)設計要求限制用戶名和密碼長度
- 如果登錄功能需要驗證碼,點擊驗證碼圖片是否可以更換驗證碼忘苛,更換后的驗證碼是否可用
- 刷新頁面是否會刷新驗證碼
- 如果驗證碼具有時效性蝉娜,需要分別驗證時效內(nèi)和時效外驗證碼的有效性
- 用戶登錄成功但是會話超時后,繼續(xù)操作是否會重定向到用戶登錄界面
- 不同級別的用戶扎唾,比如管理員用戶和普通用戶召川,登錄系統(tǒng)后的權(quán)限是否正確
- 頁面默認焦點是否定位在用戶名的輸入框中
- 快捷鍵 Tab 和 Enter 等,是否可以正常使用
隱式功能性需求
- 安全性測試
用戶密碼后臺存儲是否加密
用戶密碼在網(wǎng)絡傳輸過程中是否加密
密碼是否具有有效期胸遇,密碼有效期到期后荧呐,是否提示需要修改密碼
不登錄的情況下,在瀏覽器中直接輸入登錄后的 URL 地址纸镊,驗證是否會重新定向到用戶登錄界面
密碼輸入框是否不支持復制和粘貼
密碼輸入框內(nèi)輸入的密碼是否都可以在頁面源碼模式下被查看
用戶名和密碼的輸入框中分別輸入典型的“SQL 注入攻擊”字符串坛增,驗證系統(tǒng)的返回頁面
用戶名和密碼的輸入框中分別輸入典型的“XSS 跨站腳本攻擊”字符串,驗證系統(tǒng)行為是否被篡改
連續(xù)多次登錄失敗情況下薄腻,系統(tǒng)是否會阻止后續(xù)的嘗試以應對暴力破解
同一用戶在同一終端的多種瀏覽器上登錄收捣,驗證登錄功能的互斥性是否符合設計預期
同一用戶先后在多臺終端的瀏覽器上登錄,驗證登錄是否具有互斥性庵楷。
- 性能測試
- 單用戶登錄的響應時間是否小于 3 秒
- 單用戶登錄時罢艾,后臺請求數(shù)量是否過多
- 高并發(fā)場景下用戶登錄的響應時間是否小于 5 秒
- 高并發(fā)場景下服務端的監(jiān)控指標是否符合預期
- 高集合點并發(fā)場景下,是否存在資源死鎖和不合理的資源等待
- 長時間大量用戶連續(xù)登錄和登出尽纽,服務器端是否存在內(nèi)存泄漏
- 兼容性測試
- 不同瀏覽器下咐蚯,驗證登錄頁面的顯示以及功能正確性
- 相同瀏覽器的不同版本下,驗證登錄頁面的顯示以及功能正確性
- 不同移動設備終端的不同瀏覽器下弄贿,驗證登錄頁面的顯示以及功能正確性
- 不同分辨率的界面下春锋,驗證登錄頁面的顯示以及功能正確性
- 窮盡測試
是指軟件輸入值和前提條件所有可能的組合的測試方法,完成窮盡測試的系統(tǒng)里面應該不殘留任何未知的軟件缺陷,但是受限于世界成本經(jīng)濟成本,是不可能去窮盡所有可能的組合,而是采用有所側(cè)重地選擇測試范圍,和設計測試用例,尋求缺陷風險和研發(fā)成本直接的平衡