這個面試問題在我幾次的面試過程中碰到了三次,我想雖然是老問題了但是喲喲把它答好才對。在我第一次碰到這個問題時我覺得挺簡單的,我的回答是根據我在登錄頁面的使用經驗去答的,第一次的面試我沒有全新的對待,到了第二次面試碰到這個問題后我回來決定要好好專研這個問題(因為我覺得我回答后面試官並不是很滿意這個問題。。。so 要好好的對待才是)。
(以下的內容純屬借鑒)
原博客地址:https://blog.csdn.net/dml1220/article/details/44150807
- 這個 面試考察的目的:首先你要先了解客戶的需求(當然客戶的需求基於項目的類型和用戶使用的需求)比如:這個登錄界面應該是彈出窗口式的還是直接在網頁里面的。用戶名的長度、和密碼的強度(就是密碼組合起來后的簡單程度)等。還有比如用戶對界面的美觀是不是有特殊的要求(UI界面的測試)。剩下的就是設計用例了,等價類,邊界值等等。請記住一點,任何測試不管是什么要需要從了解需求開始(了解需求后你才會更清楚更及時的發現項目中的bug!)
一、功能測試(function test)
- 什么都不輸入操作提交按鈕后代碼的處理動作是如何的(非空檢查)
- 輸入正確的用戶名和密碼,點擊提交按鈕后驗證是否正確登錄。(正常輸入)
- 輸入錯誤的用戶名或者密碼(原作者這個“或者”很嚴謹啊)驗證點擊登錄后時候會提示失敗(錯誤校驗)
- 登錄成功后是能否跳轉到正確的頁面(功能校驗)
- 用戶名和密碼輸入內容是否支持特殊字符(比如表情字符類空格)和其他非英文的情況(是否做了過濾)
- 記住用戶名的功能
- 登錄失敗后不能記錄密碼的功能
- 用戶名和密碼前后有空格的處理、
- 密碼是否加密顯示(使用星號或者圓點等)
- 牽扯到驗證碼的還要老驢文字是否扭曲過度導致辨識度南孚過大,考慮顏色(色盲使用者)刷新或換一個按鈕是否好用
- 登錄頁面中的注冊忘記密碼,登出用另一賬號登陸鏈接是否正確
- 輸入密碼的時候大寫鍵盤開啟的時候是否要有提示
二、界面測試(UI test)
- 頁面布局是否合理等
- 輸入正確的用戶名個密碼后登陸成功跳轉到新頁面的不能超過5秒
三、性能測試(performance test)
- 打開登陸頁面后需要幾秒
- 輸入正確的用戶名和密碼后登陸成功跳轉到新頁面不超過的上限時間
四、安全性測試(security test)
- 登陸成功后生成的cookie是否會HTTPonly(否則容易被腳本盜取)
- 用戶名和密碼是否通過加密的方式發送給web服務器
- 用戶名和密碼的驗證用該是服務器端的驗證而不能單單是在客戶端用JavaScript驗證、
- 用戶名和密碼的輸入框應該是服務器段驗證,而不能單單是在客戶端用JS來驗證
- 用戶名和木馬的輸入框應該禁止輸入腳本(防止XSS的攻擊)
- 錯誤登錄的次數限制(防止暴力破解)
- 考慮是否支持多用戶同時登錄
- 考慮是否支持在多台機器上登錄
五、可用性測試(usability test)
- 是否可以全用鍵盤操作 是否有快捷鍵
- 輸入用戶名和密碼后按回車是夠可以登錄
- 輸入框能否可以以tab鍵切換
六、兼容性測試(Compatibility Test)
- 主流的瀏覽器能否顯示正常以及功能正常(常見的瀏覽器有:TE6789、Firefox、Chrome、Safari、等)
- 不同的平台是否正常工作,比如windowS MAC 等、
- 不同的移動設備上是否能夠正常工作,如iOS、Android等環境
- 不同的分辨率下的UI顯示是否正常
七、本地化的測試(localization test )
- 不同語言環境下頁面的內容是否有跟隨性
八、軟件輔助性測試(accessibility test)
- 軟件輔助功能測試是指軟件是否向殘疾用戶提供足夠的輔助功能
- 高對比下是否顯示正常(視力不好的人使用)