問題:如圖,一個登陸頁面,怎麼測?
回答這個問題不同的思考者有不同的思考方式。這也是面試官常會問到的一個問題。因為這個問題不僅可以考察一個人的邏輯思維,有沒有條例而且可以考察測試技術的水準或者測試水平在那個層次上。如果是功能測試者可能會以測試的功能點來解答,如果是自動化測試者或考慮怎麼用自動化來實現登陸頁面的測試,安全測試的會想到sql注入、cookies、token等安全行為。無論怎樣思考都逃不出測試那幾個點,功能性、效能、安全、相容性、UI、易用性、介面測試、程式碼測試、異常測試等。下來筆者將一一講解。
1、功能性測試
功能測試首先要滿足登陸的基本功能,無論那種測試進行的第一步測試肯定是功能測試
主要測試項:
使用者名稱、密碼正確,點選登陸,登陸成功(不管測什麼,首先第一條應該測試正常的流程,這也是優先順序最高的用例)
使用者名稱為空,正確的密碼點選登陸,有合理的提示資訊
使用者名稱為特殊符號(空格、*#、……&等能想到的都輸入進去)、正確的密碼,點選登陸,有合理的提示資訊
使用者名稱正確、密碼為空,點選登陸有合理的提示
使用者名稱正確、密碼錯誤,點選登陸有合理的提示
使用者名稱的長度限制測試(如果長度小於等於12個字元,則輸入12,13個字元測試)
密碼的長度限制測試(如果長度小於等於12個字元,則輸入12,13個字元測試)
密碼要掩碼顯示
使用者名稱處先輸入空格再輸入正確的使用者名稱,輸入正確的密碼點選登陸,系統自動去掉空格,登陸成功
不輸入內容直接退出,退出成功
使用者名稱和密碼處輸入內容,點選退出,再次進入登陸頁面,輸入框清空
如果是瀏覽器登陸,驗證瀏覽器的重新整理後,使用者名稱和密碼處輸入的內容被清空
2、效能測試
效能測試是系統承載量的一個測試,對系統登陸介面併發量的一個測量
首先要知道系統正常允行時大概會有多少人用,登陸使用最多的時間段(例如上班時間)。繁忙時段多少人用(比如搞個活動,很多人來用)
瞭解到登陸使用的場景後根據預測量測試
不同網速下,開啟登陸頁面需要需要多長時間
登陸成功進入系統需要多長時間
3、安全性測試
登陸多次後,會不會提示登陸次數上限
登陸次數上限後,在限制的時間內登陸,在解除限制時間後登陸
輸入框是否對sql注入有做處理
使用者登陸後通過抓包工具檢視密碼是否做加密處理
登入成功後生成的Cookie,是否是httponly
輸入框是否對指令碼的輸入做了處理(xss攻擊)
在同一臺電腦上是否允許對同一使用者兩次登陸
在不同的電腦上是否允許同一使用者登陸,第二臺電腦登陸後第一臺電腦上的使用者會不會擠掉
4、相容性測試
如果是瀏覽器登陸,考慮蘋果、火狐、ie、谷歌瀏覽器上的相容
手機上登陸,考慮手機版本,系統、手機型號等
5、UI測試
登陸模組的位置,大小,佔全域性的比例
圖片的大小,尺寸,解析度,佔全域性的比例
兩個輸入框的大小,位置,對齊方式
提示資訊文字的大小,顏色
兩個按鈕的大小,樣式,對齊方式,與輸入框的間距
在輸入框輸入內容的時候,游標的位置,大小
瀏覽器大小調節,樣式是否會錯亂
6、易用性
tab是否可以切換
enter鍵是否是直接登陸
鍵盤其他的快捷鍵操作(複製、貼上、撤退等)
7、介面測試
主要針對登陸介面進行測試
使用該介面,具體測試參照功能測試
8、程式碼測試
主要針對登陸模組程式碼,一般是開發自測
9、異常測試
構造本機cpu、硬碟等佔用率達到80%、90%以上進行登陸
構造伺服器cpu、硬碟等佔用率達到80%、90%以上進行登陸
構造網路異常測試,2G、4G|、斷網等
登陸的操作中停電,下次開啟後是否會記錄登陸資料