給你一個登陸,如何測試

面試一個題目登錄功能,而且不同系統代碼設計方式都有所差異,所以就這個登錄功能而言就要測試四次,看似一個簡單的登錄功能其中設計的測試點也是相當複雜

一.瞭解平臺

首先你需要了解平臺設計結構,是前後端分離還是不分離。

瞭解這個主要是涉及到用戶登錄緩存數據的一個存儲。這就需要了解session,cookie,Token之間的區別。

目前我們的二個平臺,有一個平臺是做的前後端分離,因爲前後端分離是無狀態的,就沒有session,必須有權限認證,有可能是Token,也有可能是其它(Oauth/Bearer Token等),這裏我們的系統用的是Token(令牌)認證。

而未做前後端分離的平臺,是將登錄信息臨時存儲在cookie中,明白了這些那在測試過程就需要對這一部分的鑑權做測試。

Cookie數據存放在客戶的瀏覽器中.

Session數據存放在服務器中。

Token用戶身份的驗證方式。

 

二.分析登錄模塊的測試點

一般來說登錄模塊的功能點都比較簡單。大致分爲用戶名、密碼、忘記密碼、記住用戶名以及按鈕。

除了分析功能點之外,我們還需要考慮以下幾個點:

1.權限認證

這個主要是指cookie、Token失效,操作菜單產生什麼樣的結果。

2.橫向越權

指AB二個用戶擁有相同的權限,然後A用戶嘗試訪問B用戶的資源。

另外還有一個是縱向越權,是低級別用戶的權限去訪問高級別用戶的資源。

三.設計測試用例

設計功能點的測試用例

我們的系統不做記住用戶和忘記密碼的功能,所以針對這二個功能未設計測試點。

1、功能測試

        0. 什麼都不輸入,點擊提交按鈕,看提示信息。

  1.輸入正確的用戶名和密碼,點擊提交按鈕,驗證是否能正確登錄。

  2.輸入錯誤的用戶名或者密碼, 驗證登錄會失敗,並且提示相應的錯誤信息。

  3.登錄成功後能否能否跳轉到正確的頁面

  4.用戶名和密碼,如果太短或者太長,應該怎麼處理

  5.用戶名和密碼中有特殊字符(比如空格),和其他非英文的情況

  6.記住用戶名的功能

  7.登陸失敗後,不能記錄密碼的功能

  8.用戶名和密碼前後有空格的處理

      9.密碼是否加密顯示(星號圓點等)

     10.牽扯到驗證碼的,還要考慮文字是否扭曲過度導致辨認難度大,考慮顏色(色盲使用者),刷新或換一個按鈕是否好用

     11.登錄頁面中的註冊、忘記密碼,登出用另一帳號登陸等鏈接是否正確

     12.輸入密碼的時候,大寫鍵盤開啓的時候要有提示信息

2.安全測試

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

  2.用戶名和密碼是否通過加密的方式,發送給Web服務器

  3.用戶名和密碼的驗證,應該是用服務器端驗證, 而不能單單是在客戶端用javascript驗證

  4.用戶名和密碼的輸入框,應該屏蔽SQL 注入攻擊

  5.用戶名和密碼的的輸入框,應該禁止輸入腳本 (防止XSS攻擊)

  6.錯誤登陸的次數限制(防止暴力破解)

       7. 考慮是否支持多用戶在同一機器上登錄;

       8. 考慮一用戶在多臺機器上登錄

3.界面測試

在測試過程中,我們不僅要關注功能點是否按照需求已經實現了,同時我們還需要關注界面和用戶體現性,需要進行界面和體現方面的測試。

在測試界面中,主要測試以下內容:

  1.佈局是否合理,2個testbox 和一個按鈕是否對齊

  2.testbox和按鈕的長度,高度是否符合要求

       3. 界面的設計風格是否與UI的設計風格統一

       4. 界面中的文字簡潔易懂,沒有錯別字。

       5.提示用戶名、密碼輸入框是否有默認提示內容;

         輸入錯誤的用戶名或密碼是否給出了正確的提示,提示的文字、大小、顏色是否按需求描述(如果需求中沒有明確指出,             那可以借鑑其它網站相同功能的提示風格);

         用戶名和密碼是否是必填的,如果是必填的,是否用紅色星號表示(通用規則);

         輸入爲空時,給出的提示是否正確。

         密碼顯示:密碼是否是密文顯示,如果需求中規定了可支持明文顯示,顯示有相應的控件。

4.  可用性測試

  1. 是否可以全用鍵盤操作,是否有快捷鍵

  2. 輸入用戶名,密碼後按回車,是否可以登陸

       3. 輸入框能否可以以Tab鍵切換

5.兼容性測試

  1.主流的瀏覽器下能否顯示正常已經功能正常(IE,6,7,8,9, Firefox, Chrome, Safari,等)

  2.不同的平臺是否能正常工作,比如Windows, Mac

  3.移動設備上是否正常工作,比如Iphone, Andriod

  4.不同的分辨率

6.性能測試

  1.打開登錄頁面,需要幾秒

  2.輸入正確的用戶名和密碼後,登錄成功跳轉到新頁面,不超過5秒

       3.併發測試,壓力測試

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章