如何測(cè)試一個(gè)app的登陸功能/情景?

驗(yàn)證登錄流程判斷邏輯

  前端

  賬戶名、密碼、驗(yàn)證碼 是否為空?

  密碼是否符合規(guī)則(特殊字符、大小寫、數(shù)字、長(zhǎng)度..)

服務(wù)端

  驗(yàn)證碼是否正確 (對(duì)應(yīng)時(shí)間戳是否過(guò)期)

  賬戶是否存在 (未注冊(cè)、已注銷)

????????密碼是否正確? (記錄連續(xù)輸入錯(cuò)誤次數(shù),超過(guò)5次,賬號(hào)鎖定4小時(shí)?;蛱嵘?yàn)證等級(jí),采取賬號(hào)+密碼+驗(yàn)證碼+短信驗(yàn)證)

  返回session、token


圖一

(1)web從FilManager服務(wù)獲取驗(yàn)證碼

(2)FilManager據(jù)wb 上傳的時(shí)間(長(zhǎng)度為 19 位數(shù)字,精確到微妙),生成驗(yàn)證碼

圖片,并記錄時(shí)間戳對(duì)應(yīng)的驗(yàn)證碼。

(3)web獲取用戶輸入的賬號(hào),密碼(md5加密),驗(yàn)證碼信息發(fā)行到login svr(今后

application svr 可能還會(huì)帶上用戶使用瀏覽器類型等用戶環(huán)境信息)。

(4),login svr通過(guò)時(shí)間(精確到微妙)獲取驗(yàn)證碼字符串。

(5)login svr根據(jù) web獲取的用戶信息動(dòng)態(tài)計(jì)算確定用戶的認(rèn)證等級(jí),如果為默認(rèn)認(rèn)證方式,驗(yàn)證賬號(hào),密碼,驗(yàn)證碼是否正確,如果正確返回驗(yàn)證成功以及相應(yīng)的 session ID; login svr還要在 redis 中記錄當(dāng)前用戶 session 對(duì)應(yīng)的信息,供鑒權(quán)服務(wù)使用

(6)如果 login svr動(dòng)態(tài)計(jì)算的用戶認(rèn)證級(jí)別高于默認(rèn)級(jí)別,則 login svr返回對(duì)應(yīng)的認(rèn)證級(jí)別,web需要根據(jù)返回的結(jié)果提升認(rèn)證級(jí)別,比如 OTP認(rèn)證等等

(7) login svr記錄用戶登入日志(包括但不限于地址等)

一、基本功能測(cè)試點(diǎn):

  輸入正確的用戶名和密碼登錄成功

  輸入錯(cuò)誤的用戶名密碼登錄失敗

  用戶名正確,密碼錯(cuò)誤,是否提示輸入密碼錯(cuò)誤?

  用戶名錯(cuò)誤,密碼正常,是否提示輸入用戶名錯(cuò)誤?

  用戶名和密碼都錯(cuò)誤,是否有相應(yīng)提示?

  用戶名密碼為空時(shí),是否有相應(yīng)提示?

  如果用戶未注冊(cè),提示請(qǐng)先注冊(cè),然后進(jìn)行登錄

  已經(jīng)注銷的用戶登錄失敗,提示信息友好?

  密碼框是否加密顯示?

  用戶名是否支持中文、特殊字符?

  用戶名是否有長(zhǎng)度限制?

  密碼是否支持中文,特殊字符?

  密碼是否有長(zhǎng)度限制?

  密碼是否區(qū)分大小寫?

  密碼為一些簡(jiǎn)單常用字符串時(shí),是否提示修改?如:123456

  密碼存儲(chǔ)方式?是否加密?

  登錄功能是否需要輸入驗(yàn)證碼?

  驗(yàn)證碼有效時(shí)間?

  驗(yàn)證碼輸入錯(cuò)誤,登錄失敗,提示信息是否友好?

  輸入過(guò)期的驗(yàn)證能否登錄成功?

  驗(yàn)證碼是否容易識(shí)別?

  驗(yàn)證碼換一張功能是否可用?

  點(diǎn)擊驗(yàn)證碼圖片是否可以更換驗(yàn)證碼?

  用戶體系:

  比如系統(tǒng)分普通用戶、高級(jí)用戶,不同用戶登錄系統(tǒng)后可的權(quán)限不同。

  如果使用第三方賬號(hào)(QQ,微博賬號(hào))登錄,那么第三方賬號(hào)與本系統(tǒng)的賬號(hào)體系對(duì)應(yīng)關(guān)系如何保存?首次登錄需要極權(quán)等

二、頁(yè)面測(cè)試:

  登錄頁(yè)面顯示是否正常?文字和圖片能否正常顯示,相應(yīng)的提示信息是否正確,按鈕的設(shè)置和排列是否正常,頁(yè)面是否簡(jiǎn)潔壯觀等。

  頁(yè)面默認(rèn)焦點(diǎn)是否定位在用戶名的輸入框中

  首次登錄時(shí)相應(yīng)的輸入框是否為空?或者如果有默認(rèn)文案,當(dāng)點(diǎn)擊輸入框時(shí)默認(rèn)方案是否消失?

  相應(yīng)的按鈕如登錄、重置等,是否可用;頁(yè)面的前進(jìn)、后退、刷新按鈕是否可用?

  快捷鍵Tab,Esc,Enter?等,能否控制使用

  兼容性測(cè)試:不同瀏覽器,不同操作系統(tǒng),不同分辨率下界面是否正常

三?、安全測(cè)試:

  不登錄:瀏覽器中直接輸入登錄后的地址,看是否可以直接進(jìn)入

  登錄成功后生成的Cookie,是否是httponly?(否則容易被腳本盜取)

  用戶名和密碼是否通過(guò)加密的方式,發(fā)送給Web服務(wù)器

  用戶名和密碼的驗(yàn)證,應(yīng)該是用服務(wù)器端驗(yàn)證,?而不能單單是在客戶端用javascript驗(yàn)證

  用戶名和密碼的輸入框,應(yīng)該屏蔽SQL?注入攻擊

  用戶名和密碼的的輸入框,應(yīng)該禁止輸入腳本?(防止XSS攻擊)

  錯(cuò)誤登陸的次數(shù)限制(防止暴力破解)

  考慮是否支持多用戶在同一機(jī)器上登錄;

  考慮一用戶在多臺(tái)機(jī)器上登錄

四、性能測(cè)試:

單用戶登錄系統(tǒng)的響應(yīng)時(shí)間是否符合"3-5-8"原則

用戶數(shù)在臨界點(diǎn)時(shí)并發(fā)登錄是否還能符合"3-5-8"原則

壓力:大量并發(fā)用戶登錄,系統(tǒng)的響應(yīng)時(shí)間是多少?系統(tǒng)會(huì)出現(xiàn)宕機(jī)、內(nèi)存泄露、cpu飽和、無(wú)法登錄嗎?

穩(wěn)定性:?系統(tǒng)能否處理并發(fā)用戶數(shù)在臨界點(diǎn)以內(nèi)連續(xù)登錄N個(gè)時(shí)的場(chǎng)景?

五、兼容性測(cè)試

1.主流的瀏覽器(IE6,7,8,9,?Firefox,?Chrome,?Safari等)

2.不同的平臺(tái),比如Windows,?Mac

3.移動(dòng)設(shè)備上,比如Iphone,?Andriod

4.不同的分辨率能否正常顯示

六、其它測(cè)試:

連續(xù)輸入3次或以上錯(cuò)誤密碼,用記是否被鎖一定時(shí)間(如:15分鐘)?時(shí)間內(nèi)不允許登錄,超出時(shí)間點(diǎn)是否可以繼續(xù)登錄。

用戶session過(guò)期后,重新登錄是否還能重新返回這前session過(guò)期的頁(yè)面?

用戶名和密碼輸入框是事支持鍵盤快捷鍵?如:撤銷、復(fù)制、粘貼等等

是否允許同名用戶同時(shí)登錄進(jìn)行操作?考慮web和app同時(shí)登錄

手機(jī)登錄時(shí),是否先判斷網(wǎng)絡(luò)可用?

手機(jī)登錄時(shí),是否先判斷app存在新版本?

是否支持單點(diǎn)登錄?

是否有埋點(diǎn)接口

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容