“登錄”功能如何測試?

“登錄”功能如何測試?

常用的登錄方式有很多,如:郵箱、賬號、手機號登錄。對于同時支持多種登錄方式,測試時除了考慮每種方式是否能夠登錄成功以外,還需要考慮不同登錄方式的優(yōu)先級、對于用戶習(xí)慣登錄方式的設(shè)置和記憶、各種登錄方式之間的切換、不同設(shè)備的不同登錄方式等。

以下是“登錄”功能需要測試的點: 輸入正確的用戶名和密碼登錄成功 輸入錯誤的用戶名密碼登錄失敗 用戶名或密碼錯誤或為空時,是否有對應(yīng)的錯誤提示 用戶未注冊就登錄,是否提示先注冊再登錄 已經(jīng)注銷的用戶登錄失敗,提示信息是否友好 密碼框是否加密顯示 用戶名、密碼是否支持中文、特殊字符 用戶名、密碼框是否有長度限制,是否區(qū)分大小寫 密碼為一些簡單常用字符串時,是否提示修改?如: 123456 密碼存儲時是否加密 驗證碼有效時間 驗證碼輸入錯誤或過期,提示信息是否友好 驗證碼是否容易識別,換一張功能是否可用,點擊驗證碼圖片是否可以更換驗證碼 如果使用第三方賬號 (微信,QQ,微博賬號)登錄,那么第三方賬號與本系統(tǒng)的賬號體系對應(yīng)關(guān)系如何保存 布局是否合理、美觀,輸入框是否對齊 風(fēng)格和提示信息用語是否符合語境 登錄頁面文字和圖片能否正常顯示,按鈕的設(shè)置和排列是否正常 頁面默認焦點是否定位在用戶名的輸入框中 首次登錄時相應(yīng)的輸入框是否為空,或者如果有默認文案,當點擊輸入框時默認方案是否消失 頁面的前進、后退、刷新按鈕是否可用 快捷鍵 Tab,Esc,Enter 等,能否控制使用 單用戶登錄系統(tǒng)的響應(yīng)時間是否符合 \”3-5-8\”原則 用戶數(shù)在臨界點時并發(fā)登錄是否還能符合 \”3-5-8\”原則 大量并發(fā)用戶登錄,系統(tǒng)的響應(yīng)時間是多少,系統(tǒng)會出現(xiàn)宕機、內(nèi)存泄露、 cpu飽和、無法登錄嗎,是否存在資源*鎖和不合理的資源等待 長時間大量用戶連續(xù)登錄和登出,服務(wù)器端是否存在內(nèi)存泄漏 用戶名和密碼是否通過加密的方式,發(fā)送給Web服務(wù)器 用戶名和密碼的驗證,應(yīng)該是前端驗證+服務(wù)器端驗證, 而不能單單是在客戶端用javascript驗證 密碼輸入框是否不支持**和粘貼 用戶名和密碼的輸入框,無SQL 注入攻擊風(fēng)險 錯誤登錄的次數(shù)限制(防止暴力破解) 驗證碼不能被輕易破解、欺騙 不登錄的情況下,在瀏覽器中直接輸入需要登錄后才能訪問的URL地址,驗證是否會重新定向到用戶登錄界面 同一用戶先后在多臺終端的瀏覽器上登錄,驗證登錄是否具有互斥性 主流的瀏覽器下能否顯示正常 不同的操作系統(tǒng)是否能正常工作 移動設(shè)備上是否正常工作 不同的分辨率 是否提供記住用戶名密碼、自動登錄的功能 輸入用戶名,密碼后按回車,是否可以登陸 連續(xù)輸入 3次或以上錯誤密碼,用記是否被鎖一定時間(如:15分鐘),時間內(nèi)不允許登錄,超出時間點是否可以繼續(xù)登錄。

H5用戶登錄測試用例

輸入已注冊的用戶名和正確的密碼,驗證是否登錄成功; 輸入已注冊的用戶名和不正確的密碼,驗證是否登錄失敗,并且提示信息正確; 輸入未注冊的用戶名和任意密碼,驗證是否登錄失敗,并且提示信息正確; 輸入未激活的、已鎖定的、被注銷的用戶名和正確密碼,驗證是否登錄成功; 用戶名和密碼兩者都為空,驗證是否登錄失敗,并且提示信息正確; 用戶名和密碼兩者之一為空,驗證是否登錄失敗,并且提示信息正確; **次登錄失敗,再次輸入正確的用戶名和密碼,驗證是否登錄成功; 如果登錄功能啟用了驗證碼功能,用戶名、密碼、驗證碼都輸入正確,驗證是否登錄成功; 如果登錄功能啟用了驗證碼功能,用戶名、密碼正確,驗證碼輸入錯誤,驗證是否登錄失敗,并且提示信息正確; 點擊驗證碼圖片是否可以更換驗證碼,更換后的驗證碼是否可用; 刷新頁面是否會刷新驗證碼,刷新后的驗證碼是否可用; 如果驗證碼具有時效性,需要分別驗證時效內(nèi)和時效外驗證碼的有效性; 無**模式下登錄,是否給出“**未連接”或“**異常”的提示; **次登錄請求超時后(服務(wù)器出問題,隨后恢復(fù)正常),再次請求登錄能否登錄成功。頁面默認焦點是否定位在用戶名的輸入框中; 快捷鍵 Tab 和 Enter 等,是否可以正常使用; 用戶名和密碼是否大小寫、空格敏感; 使用中文、英文鍵盤輸入字母傳給后端的字符長度是否一致; 前端頁面是否根據(jù)設(shè)計要求限制用戶名和密碼長度,且前后臺都需要限制; 頁面上的密碼框是否加密顯示,是否需要設(shè)置明暗碼切換按鈕; 輸入欄是否設(shè)置快速刪除按鈕; 忘記用戶名和忘記密碼的功能是否可用; 修改密碼后,是否重定向到登錄頁面; 修改密碼后,原密碼是否作廢不可用; 在其他終端修改密碼后,PC端是否自動下線,若下線后,使用原密碼能否繼續(xù)登錄; 使用默認密碼**次登錄成功時,是否提示修改密碼; **次登錄成功,是否會同步其他終端用戶信息; 用戶登錄成功但是會話超時后,繼續(xù)操作是否會重定向到用戶登錄界面; 不同級別的用戶,比如管理員用戶和普通用戶,登錄系統(tǒng)后的權(quán)限是否正確; 輸入錯誤密碼的限制次數(shù): 分別測試**值-1、**值、**值+1 時的輸錯密碼情況; 超過**次數(shù)限制后,是否采取強制手段限制登錄或?qū)~號暫時凍結(jié)處理; 超過**次數(shù)限制后,分別輸入正確的密碼和錯誤的密碼再次登錄。

用戶名、密碼、驗證碼輸入框是否不支持**和粘貼; 密碼輸入框內(nèi)輸入的密碼是否都可以在頁面源碼模式下被查看; 用戶密碼后臺存儲是否加密; 用戶密碼在**傳輸過程中是否加密; 密碼是否具有“有效期”,密碼有效期到期后,是否提示需要修改密碼; 是否可記住密碼,記住的密碼保存是否加密; 記住密碼是否有“有效期”,若有“有效期”,過期之后是否會清空密碼; 登錄成功后的session時效設(shè)置; 登錄錯誤后的提示是否有安全隱患; 退出登錄后再次登錄,使用記住的密碼,是否登錄成功; 不登錄的情況下,在瀏覽器中直接輸入登錄后的 URL 地址,驗證是否會重新定向到用戶登錄界面; 用戶登錄過程中l(wèi)og中是否有個人信息明文打印 用戶名和密碼的輸入框中分別輸入典型的“SQL 注入攻擊”字符串,驗證系統(tǒng)的返回頁面; 用戶名和密碼的輸入框中分別輸入典型的“XSS 跨站腳本攻擊”字符串,驗證系統(tǒng)行為是否被篡改; 連續(xù)多次登錄失敗情況下,系統(tǒng)是否會阻止后續(xù)的嘗試以應(yīng)對暴力破解; 登錄后輸入登錄URL,是否還能再次登錄?如果能,原登錄用戶是否變得無效; 同用戶同終端的多種瀏覽器上登錄,驗證登錄功能的互斥性是否符合設(shè)計預(yù)期; 同用戶不同終端,先后登錄,驗證登錄是否具有互斥性; 同用戶同瀏覽器已經(jīng)登錄,再次打開一個標簽頁時,是否需要重新登錄; 不同用戶在同終端同瀏覽器登錄,驗證登錄信息token的正確性; 不同用戶在同終端同瀏覽器登錄,被踢后,頁面是否會跳轉(zhuǎn)到登錄頁; 是否支持第三方登錄,如微信、QQ、微博; 是否允許第三方工具平臺存儲密碼; 是否可以使用登錄的API發(fā)送登錄請求,并繞開驗證碼校驗; 是否可以用抓包工具抓到的請求包直接登錄; 截取到的token等信息,是否可以在其他終端上直接使用,繞開登錄。

token過期時間校驗; 性能壓力測試用例: 單用戶登錄的響應(yīng)時間是否小于 3 秒; 單用戶登錄時,后臺請求數(shù)量是否過多; 高并發(fā)場景下用戶登錄的響應(yīng)時間是否小于 5 秒; 高并發(fā)場景下服務(wù)端的監(jiān)控指標是否符合預(yù)期; 高**點并發(fā)場景下,是否存在資源*鎖和不合理的資源等待; 長時間大量用戶連續(xù)登錄和登出,服務(wù)器端是否存在內(nèi)存泄漏。

如何測試一個網(wǎng)頁登陸界面

首先,你要了解用戶的需求,比如這個登錄界面應(yīng)該是彈出窗口式的,還是直接在網(wǎng)頁里面。對用戶名的長度,和密碼的強度(就是是不是必須多少位,大小寫,特殊字符混搭)等。

還有比如用戶對界面的美觀是不是有特殊的要求?(即是否要進行UI測試)。

剩下的就百科是設(shè)計用例了 ,等價類,邊界值等等。請你記住一點,任何測試,不管測什么都是從了解需求開始的。

登錄注冊測試點及內(nèi)部解剖

驗證登錄流程判斷邏輯前端 賬戶名、密碼、驗證碼 是否為空? 密碼是否符合規(guī)則(特殊字符、大小寫、數(shù)字、長度..) 服務(wù)端 驗證碼是否正確 (對應(yīng)時間戳是否過期) 賬戶是否存在 (未注冊、已注銷) 密碼是否正確 (記錄連續(xù)輸入錯誤次數(shù),超過5次,賬號鎖定4小時。或提升驗證等級,采取賬號+密碼+驗證碼+短信驗證)?返回session、token一、基本功能測試點: 輸入正確的用戶名和密碼登錄成功 輸入錯誤的用戶名密碼登錄失敗 用戶名正確,密碼錯誤,是否提示輸入密碼錯誤? 用戶名錯誤,密碼正常,是否提示輸入用戶名錯誤? 用戶名和密碼都錯誤,是否有相應(yīng)提示? 用戶名密碼為空時,是否有相應(yīng)提示? 如果用戶未注冊,提示請先注冊,然后進行登錄 已經(jīng)注銷的用戶登錄失敗,提示信息友好? 密碼框是否加密顯示? 用戶名是否支持中文、特殊字符? 用戶名是否有長度限制? 密碼是否支持中文,特殊字符? 密碼是否有長度限制? 密碼是否區(qū)分大小寫? 密碼為一些簡單常用字符串時,是否提示修改?如:123456 密碼存儲方式?是否加密? 登錄功能是否需要輸入驗證碼? 驗證碼有效時間? 驗證碼輸入錯誤,登錄失敗,提示信息是否友好? 輸入過期的驗證能否登錄成功? 驗證碼是否容易識別? 驗證碼換一張功能是否可用?點擊驗證碼圖片是否可以更換驗證碼? 用戶體系:比如系統(tǒng)分普通用戶、高級用戶,不同用戶登錄系統(tǒng)后可的權(quán)限不同。

如果使用第三方賬號(QQ,微博賬號)登錄,那么第三方賬號與本系統(tǒng)的賬號體系對應(yīng)關(guān)系如何保存?首次登錄需要極權(quán)等 二、頁面測試: 登錄頁面顯示是否正常?文字和圖片能否正常顯示,相應(yīng)的提示信息是否正確,按鈕的設(shè)置和排列是否正常,頁面是否簡潔壯觀等。

頁面默認焦點是否定位在用戶名的輸入框中 首次登錄時相應(yīng)的輸入框是否為空?或者如果有默認文案,當點擊輸入框時默認方案是否消失? 相應(yīng)的按鈕如登錄、重置等,是否可用;頁面的前進、后退、刷新按鈕是否可用? 快捷鍵Tab,Esc,Enter 等,能否控制使用 兼容性測試:不同瀏覽器,不同操作系統(tǒng),不同分辨率下界面是否正常 三?、安全測試: 不登錄:瀏覽器中直接輸入登錄后的地址,看是否可以直接進入 登錄成功后生成的Cookie,是否是httponly (否則容易被腳本盜取) 用戶名和密碼是否通過加密的方式,發(fā)送給Web服務(wù)器?用戶名和密碼的驗證,應(yīng)該是用服務(wù)器端驗證, 而不能單單是在客戶端用javascript驗證 用戶名和密碼的輸入框,應(yīng)該屏蔽SQL 注入攻擊 用戶名和密碼的的輸入框,應(yīng)該禁止輸入腳本 (防止XSS攻擊) 錯誤登陸的次數(shù)限制(防止暴力破解) 考慮是否支持多用戶在同一機器上登錄; 考慮一用戶在多臺機器上登錄 四、性能測試: 單用戶登錄系統(tǒng)的響應(yīng)時間是否符合\”3-5-8\”原則 用戶數(shù)在臨界點時并發(fā)登錄是否還能符合\”3-5-8\”原則 壓力:大量并發(fā)用戶登錄,系統(tǒng)的響應(yīng)時間是多少?系統(tǒng)會出現(xiàn)宕機、內(nèi)存泄露、cpu飽和、無法登錄嗎? 穩(wěn)定性: 系統(tǒng)能否處理并發(fā)用戶數(shù)在臨界點以內(nèi)連續(xù)登錄N個時的場景? 五、其它測試: 連續(xù)輸入3次或以上錯誤密碼,用記是否被鎖一定時間(如:15分鐘)?時間內(nèi)不允許登錄,超出時間點是否可以繼續(xù)登錄。