最全的登錄功能測試點,你都知道哪些?
驗證登錄流程判斷邏輯
· 前端
賬戶名、密碼、驗證碼是否為空
密碼是否符合規(guī)則(特殊字符、大小寫、數(shù)字、長度..)
· 服務端
驗證碼是否正確(對應時間戳是否過期)
賬戶是否存在(未注冊、已注銷)
密碼是否正確(記錄連續(xù)輸入錯誤次數(shù),超過5次,賬號鎖定4小時?;蛱嵘炞C等級,采取賬號+密碼+驗證碼+短信驗證)
返回session、token
基本功能測試點
1. 輸入正確的用戶名和密碼登錄成功
2. 輸入錯誤的用戶名密碼登錄失敗
3. 用戶名正確,密碼錯誤,是否提示輸入密碼錯誤?
4. 用戶名錯誤,密碼正常,是否提示輸入用戶名錯誤?
5. 用戶名和密碼都錯誤,是否有相應提示?
6. 用戶名密碼為空時,是否有相應提示?
7. 如果用戶未注冊,提示請先注冊,然后進行登錄
8. 已經(jīng)注銷的用戶登錄失敗,提示信息友好?
9. 密碼框是否加密顯示?
10. 用戶名是否支持中文、特殊字符?
11. 用戶名是否有長度限制?
12. 密碼是否支持中文,特殊字符?
13. 密碼是否有長度限制?
14. 密碼是否區(qū)分大小寫?
15. 密碼為一些簡單常用字符串時,是否提示修改?如:123456
16. 密碼存儲方式?是否加密?
17. 登錄功能是否需要輸入驗證碼?
·驗證碼有效時間?
·驗證碼輸入錯誤,登錄失敗,提示信息是否友好?
·輸入過期的驗證能否登錄成功?
·驗證碼是否容易識別?
·驗證碼換一張功能是否可用?點擊驗證碼圖片是否可以更換驗證碼?
18. 用戶體系:比如系統(tǒng)分普通用戶、高級用戶,不同用戶登錄系統(tǒng)后可的權(quán)限不同。
19. 如果使用第三方賬號(QQ,微博賬號)登錄,那么第三方賬號與本系統(tǒng)的賬號體系對應關(guān)系如何保存?首次登錄需要極權(quán)等。
頁面測試
1. 登錄頁面顯示是否正常?文字和圖片能否正常顯示,相應的提示信息是否正確,按鈕的設置和排列是否正常,頁面是否簡潔壯觀等。
2. 頁面默認焦點是否定位在用戶名的輸入框中
3. 首次登錄時相應的輸入框是否為空?或者如果有默認文案,當點擊輸入框時默認方案是否消失?
4. 相應的按鈕如登錄、重置等,是否可用;頁面的前進、后退、刷新按鈕是否可用?
5. 快捷鍵Tab,Esc,Enter等,能否控制使用?
6. 兼容性測試:不同瀏覽器,不同操作系統(tǒng),不同分辨率下界面是否正常。
安全測試
1. 不登錄:瀏覽器中直接輸入登錄后的地址,看是否可以直接進入
2. 登錄成功后生成的Cookie,是否是httponly(否則容易被腳本盜取)
3. 用戶名和密碼是否通過加密的方式,發(fā)送給Web服務器
4. 用戶名和密碼的驗證,應該是用服務器端驗證,而不能單單是在客戶端用javascript驗證
5. 用戶名和密碼的輸入框,應該屏蔽SQL注入攻擊
6. 用戶名和密碼的的輸入框,應該禁止輸入腳本(防止XSS攻擊)
7. 錯誤登陸的次數(shù)限制(防止暴力破解)
8. 考慮是否支持多用戶在同一機器上登錄
9. 考慮一用戶在多臺機器上登錄
性能測試
1. 單用戶登錄系統(tǒng)的響應時間是否符合"3-5-8"原則
2. 用戶數(shù)在臨界點時并發(fā)登錄是否還能符合"3-5-8"原則
3. 壓力:大量并發(fā)用戶登錄,系統(tǒng)的響應時間是多少?系統(tǒng)會出現(xiàn)宕機、內(nèi)存泄露、cpu飽和、無法登錄嗎?
4. 穩(wěn)定性:系統(tǒng)能否處理并發(fā)用戶數(shù)在臨界點以內(nèi)連續(xù)登錄N個時的場景?
功能測試
1.輸入已注冊的用戶名和正確的密碼,驗證是否登錄成功;
2.輸入已注冊的用戶名和不正確的密碼,驗證是否登錄失敗,并且提示信息正確;
3.輸入未注冊的用戶名和任意密碼,驗證是否登錄失敗,并且提示信息正確;
4.用戶名和密碼兩者都為空,驗證是否登錄失敗,并且提示信息正確;
5.用戶名和密碼兩者之一為空,驗證是否登錄失敗,并且提示信息正確;
6.如果登錄功能啟用了驗證碼功能,在用戶名和密碼正確的前提下,輸入正確的驗證碼,驗證是否登錄成功;
7.如果登錄功能啟用了驗證碼功能,在用戶名和密碼正確的前提下,輸入錯誤的驗證碼,驗證是否登錄失敗,并且提示信息正確;
兼容測試
1.不同瀏覽器下,驗證登錄頁面的顯示以及功能正確性;
2.相同瀏覽器的不同版本下,驗證登錄頁面的顯示以及功能正確性;
3.不同移動設備終端的不同瀏覽器下,驗證登錄頁面的顯示以及功能正確性;
4.不同分辨率的界面下,驗證登錄頁面的顯示以及功能正確性。
其它測試
1. 連續(xù)輸入3次或以上錯誤密碼,用記是否被鎖一定時間(如:15分鐘)?時間內(nèi)不允許登錄,超出時間點是否可以繼續(xù)登錄。
2. 用戶session過期后,重新登錄是否還能重新返回這前session過期的頁面?
3. 用戶名和密碼輸入框是支持鍵盤快捷鍵?如:撤銷、復制、粘貼等等
4. 是否允許同名用戶同時登錄進行操作?考慮web和app同時登錄
5. 手機登錄時,是否先判斷網(wǎng)絡可用?
6. 手機登錄時,是否先判斷app存在新版本?
7. 是否支持單點登錄?
8. 是否有埋點接口
-------- THE END --------
