什麼是魯棒性測試

1、介紹
  魯棒測試是對各個模塊的功能和系統進行容錯性的測試,檢測軟件模塊在異常輸入和苛刻環境條件下可否保持正常工做,包涵錯誤數據處理 、異常狀況處理和非法操做處理的測試。魯棒測試大大提升了錯誤覆蓋率,測試終端既要符合測試規範要求,還要有更高的成熟性,容錯性和易恢復性,從而更好地提升軟件質量。
2、測試目的
  確保終端軟件在處理錯誤數據和異常問題時各個功能模塊工做正常,提升終端軟件的容錯能力。進行異常測試的目的和依據以下,咱們以前的測試案例都是在驗證這三條特性:
  ● 成熟性:終端軟件爲避免由軟件中錯誤而致使失效的能力
  ● 容錯性:終端軟件在錯誤數據或者違規操做的狀況下,軟件維持規定的性能級別的能力
  ● 易恢復性:在發生故障的狀況下,終端軟件重建規定的性能級別並恢復受直接影響的數據的能力
3、測試原理
  魯棒測試目的是觀察終端軟件的健壯性。它是在異常和危險狀況下終端軟件生存的關鍵。好比說,終端軟件在輸入錯誤、網絡異常或非法操做下,可否不死機、不崩潰,測試並提升終端軟件的容錯性能力,確保用戶數據不會損害和丟失。終端軟件若是不能處理錯誤的輸入,則可能形成:
  ● 垃圾數據進入終端軟件,影響後續操做;
  ● 由於不能控制終端軟件運行流程,終端軟件可能處於未知狀態,運行發生不穩定的狀況,或者錯誤狀態,影響正常業務;
  ● 還可能發生安全性問題,使得非法用戶得到利益,或者終端軟件不能提供正常的服務。
  因此魯棒性測試是徹底必要的,只不過比正常操做的測試優先級低一些。
       3.1 錯誤數據處理
  錯誤數據處理測試原理是根據規範定義手動輸入錯誤數據進行測試,檢查測試終端相關功能模塊的容錯能力,在輸入非法數據狀況下模塊功能是否異常。
  ● 錯誤數據根據需求而言,是沒有意義的、不合理的輸入數據的集合。
  ● 錯誤數據包括不支持字符,不支持的文件,錯誤數字(密碼,電話等),空白數據,重複數據,錯誤設置,越界數據等等。
  ● 判斷提示信息是否正確,首先要符合規範;其次要友好、合理、易理解;這樣的提示才能被用戶所接受。
       3.2 異常狀況處理
  異常狀況處理測試原理是根據規範中異常處理部分的定義對非人爲因素致使的異常進行測試,檢查測試終端相關功能模塊的重試機制和自動恢復能力。
  ● 非人爲因素異常包括:網絡異常,服務器異常,終端軟件異常等。
  ● 判斷提示信息是否正確,首先要符合規範;其次要友好、合理、易理解;這樣的提示才能被用戶所接受。
  ● 在異常狀況出現後,終端軟件會自動發起重試機制,在異常狀況消失後,終端軟件可以自動恢復。
      3.3 非法操做處理
  非法操做處理測試原理是根據規範定義對人爲非法操做致使的異常進行測試,檢查測試終端相關功能模塊的恢復能力,是否有數據丟失,檢查數據的完整性等。
  ● 非法操做舉例:在編輯彩信時掉電的處理;SD卡的數據使用時插拔SD卡;數據傳輸時插拔USB線。
  ● 判斷提示信息是否正確,首先要符合規範;其次要友好、合理、易理解;這樣的提示才能被用戶所接受。
  ● 在進行非法操做後不能產生垃圾數據,沒有數據丟失,被中斷的操做沒有引發終端軟件異常。在異常狀況消失後,終端軟件可以自動恢復。
4、測試方法
  魯棒性測試方法包含錯誤數據處理,異常狀況處理和非法操做處理三類測試的測試方法,針對這三類測試內容的測試方法以下
       4.1 錯誤數據處理
  錯誤數據處理的測試方法是向指定模塊人爲輸入非法數據,檢查終端軟件的反應和提示信息是否正常。具體測試方法以下:
  1)根據測試規範判斷哪些數值屬於非法數據;
  2)人爲輸入相應的非法數據進行測試;
  3)檢查測試結果。一般測試結果會自動調整數據並給出正確的提示信息;
  注:通常不須要特定的測試設備或測試環境。
  錯誤數據處理的具體步驟列舉以下:
  需求:單頁彩信的持續時間爲1~999
  準備條件:可知0爲非法的數據
  測試步驟:
  1)新建彩信
  2)編寫一條單頁彩信。彩信內容包括圖片和文字
  3)設置持續時間爲0
  測試結果:
  1)新建彩信成功
  2)彩信編寫成功
  3)設置失敗,彈出警告對話框
5、異常狀況處理
  異常狀況處理是測試非人爲因素致使的異常,檢查測試終端對異常的狀況處理是否正常。異常狀況主要包括網絡異常,服務器異常,終端軟件異常等。
       5.1 網絡異常
  網絡異常狀況主要包括:網絡擁塞/網絡干擾,2G/3G網絡切換,電路域/數據域業務衝突,通訊網絡不可用等網絡異常狀況。具體測試方法以下:
  1)藉助屏蔽盒模擬斷網或信號弱的情景,或者設置終端軟件的網絡和實際的網絡不相符的情景;
  2)測試相應的和網絡有關的功能。
  例如:終端軟件網絡設置爲「僅限TD」狀況下在沒有TD信號的區域進行測試。要求終端軟件在網絡異常產生時不會生成垃圾數據而且在網絡可用時能夠繼續先前被中斷的操做。
      5.2 服務器異常
  經過使用測試平臺模擬服務器異常。測試儘可能用現網卡經過現網WAP網關進行測試。在某些測試項用現網環境沒法完成測試時,換用實驗室卡和實驗室網絡環境進行測試。具體測試方法以下:
  1)在測試平臺上修改數據;
  ● UA修改工具(UATools):修改成錯誤的UA,查看Push信息的推送能力的容錯性
  2)測試相關的數據。
5.3 終端軟件異常
  終端軟件異常主要測試低電的狀況,使用電量15%左右的電池進入各個模塊進行測試,檢查電量不足狀況下模塊的工做狀況,低電提醒不該該對正在進行的操做產生不良影響。具體測試方法以下:
  1)電池電量在15%左右時,對相關的模塊進行測試;
  2)電量低於10%後會有低電提醒,提醒不干擾正在進行的操做。
  3)電量低於0%後終端軟件自動關機,檢查關機會不會致使數據丟失的問題,以後查看能不能繼續充電的問題。
  例如:拍攝視頻時電量低於15%後終端軟件自動退出照相機,終端軟件提示「電量低,請充電後使用」,已經拍攝的視頻自動保存到指定路徑下。
  異常狀況處理的具體步驟列舉以下:
  測試步驟:
  1)被測終端接收彩信報。
  2)被測終端收到PUSH消息後關機。
  3)2天后開機,對收到的PUSH通知消息進行提取下載。
  測試結果:
  1)接收終端彩信報PUSH消息成功
  2)被測終端關機。
  3)提示用戶該消息已過時。
6、非法操做處理
   非法操做處理是在模塊基本功能操做的同時進行人爲因素致使的終端軟件異常操做,包括拔電池,同時還包括在執行中進行非法的操做,如同步時修改刪除同步數 據,大容量數據傳輸時修改刪除數據,終端軟件升級被外界因素干擾檢查下次終端軟件升級等。對於非法的操做終端軟件不該該產生垃圾數據,而且能保存已經編輯 的數據,確保沒有數據丟失。通常須要的測試設備有:SD卡,SIM卡,USB線等。具體測試方法以下:
  1)創建必須的測試環境或預置條件;
  2)執行非法操做;
  3)檢查測試結果,不該該產生垃圾數據,而且能保存已經編輯的數據,確保沒有數據丟失。
  異常狀況處理的具體步驟列舉以下:
  測試步驟:
  1)進入信息
  2)新建彩信,添加圖片和文字
  3)拔掉電池
  4)從新開機
  5)進入信息查看
  測試結果:
  1)進入信息成功
  2)新建彩信成功
  3)終端軟件關機
  4)開機成功
  5)編輯的彩信被自動保存在草稿箱
7、測試用例設計
       7.1 錯誤數據處理用例設計
   錯誤數據處理測試用例的設計方法是根據測試規範和需求,分析終端軟件容易產生異常數據的狀況,例如不支持字符,不支持的文件,空白數據,重複數據,錯誤 設置,越界數據等信息,根據錯誤數據分析結果設計測試用例。例如:瀏覽器錯誤數據「空白的書籤名稱/地址,空白首頁地址,重複的書籤名稱/地址,錯誤網絡 設置,錯誤密碼等等。」
       7.1.1 錯誤數據的分析原則
  首先須要根據規範中要求的合理數據(即有意義的數據構成的集合)來分析異常數據分類,而後圍繞異常數據(即不合理數獲得沒有意義的數據集合)設計測試用例。可結合等價類、邊界值的測試方法來分析錯誤數據。
       7.1.2 數據類型的舉例
  ● 必填項輸入測試:測試規範指出的屏幕上必須輸入數據的字段和屏幕上每個被說明爲必須輸入的字段,以保證它強制要求你在字段中輸入數據。錯誤數據測試應考慮空白時若是沒有輸入相關數據的提示和後續操做;
  ● 特殊字段類型測試:測試規範規定的特殊數據輸入要求(姓名、日期、電話號碼、郵編等)的字段的測試案例。錯誤數據測試輸入的數據應包括它不該該接受的數據類型,測試軟件對錯誤輸入的提示和後續操做;例如密碼只支持數字和英文,不該該支持中文。
   ● 特殊字符類型測試:測試規範上要求的某個字段支持的字符,錯誤數據測試輸入數據應該着重考慮它不支持字符集合,測試軟件對錯誤輸入的提示和後續操做;例 如:文件夾命名的非法字符/ \ : * ? " < > |。飛信暱稱不能爲guest,好友名稱不能爲stranger等。
  ● 文件類型測試:錯誤數據測試考慮規範中規定的文件類型以外的文件的支持狀況,以及測試軟件處理不支持文件類型所給出的提示和後續操做;
  ● 數據有效性測試:輸入不正確的網址,用戶名,密碼或電話等錯誤信息,測試軟件處理錯誤數據所給出的提示和後續操做;例如:瀏覽器中輸入不存在的網址,解鎖輸入錯誤密碼等。
  錯誤數據處理測試用例舉例:
  Initial Condition:
  MMS settings has been set properly
  Key Test Areas of Concentration:9 i* `3 O+ }' ~% V: g, R  v
  1. Launch Messaging/ U& i! p9 W# F7 l; n4 S. v* \
  2. Compose message$ L6 @- w  e% l
  3. Attach a nonsupport media
  4. Send MMS
  Scenario Result
  1. Show conversation list
  2. MMS is added
  3. The nonsupport media is added
  4. Successfully send
       7.2 異常狀況處理用例設計
  異常狀況處理測試用例的設計方法主要是考慮測試環境中網絡異常,服務器異常等非人爲因素異常狀況設計測試用例。客戶端應處理正確,而且終端軟件應根據規範要求給出明確錯誤緣由,有些模塊在異常狀況消失後啓動自動重試和恢復機制。
  首先要分析非人爲因素產生的異常狀況的類型,包括服務器異常,網絡異常,終端軟件異常等狀況。而後圍繞異常類型設計測試用例。
      7.2.1 服務器異常測試
  經過人爲手段,終端軟件與服務器之間數據進行交互時,測試服務器模擬異常狀態,檢查被測終端軟件的反應和其後的補救提示或操做。包括服務器超時,服務器響應錯誤等。
  服務器超時測試用例包括全部與服務器相關的模塊,當終端軟件向服務器發出請求時,發現服務器沒有返回正常的響應,則應該啓動重試機制。例如:下載彩信超時,登陸飛信超時,更新動態內容超時等等。
  服務器響應錯誤測試用例包括全部與服務器相關的模塊,當終端軟件接收到服務器發出的數據包內容或格式錯誤時,終端軟件會啓動重試機制。例如:動態內容下載響應錯誤或同步相應錯誤等等。
       7.2.2 網絡異常測試
  經過人爲手段調節網絡信號強度,網絡衝突等狀況,檢測終端軟件的反應和其後的補救提示和操做。包括網絡正在使用,電路域/數據域業務衝突,通訊網絡不可用等。
   網絡正在使用測試用例包括全部與網絡相關的模塊,在指定2G網絡下模塊向網絡發出請求後,發現GPRS的PDP正在被其它應用佔用,而且該應用使用不一樣 的網絡鏈接參數(APN或者Proxy),則啓動重試機制。在指定3G網絡下模塊向網絡發出請求後,應支持終端軟件多APN併發處理。
   電路域/數據域業務衝突測試用例包括全部與網絡相關的模塊,在2G網絡下終端軟件在使用數據域業務鏈接時,終端軟件收到電路域的語音呼叫,則客戶端中止 數據域業務鏈接,待電路域的語音通話結束後從新發起數據域業務鏈接。例如:下載文件或同步數據時打入電話等等。在3G網絡下終端軟件支持電路域和數據域業 務併發的處理。
  通訊網絡不可用測試用例包括全部與網絡相關的模塊,指定模塊向網絡發出請求後,發現GPRS不可用,則啓動重試機制。例如:飛行模式下進入瀏覽器,沒有信號時定製終端軟件電視等。
       7.2.3 終端軟件異常測試
  檢查低電狀況下的工做狀況。包括操做過程當中低電,低電後進入指定模塊等測試。
  低電測試用例須要覆蓋全部功能模塊,終端軟件電量不足狀況下對基本功能進行操做,檢查低電提醒和低電狀態對模塊的影響。例如:低電時接打電話,低電時拍照,低電時聽音樂,低電時看視頻等等。
  異常狀況處理測試用例列舉以下:
  Initial Condition:! b0 L- x* P( U# J! {
  1. MMS settings has been set properly
  2. MMS has expired in multimedia message center9 m1 c0 e8 P$ G5 G/ K9 H: J
  3. The auto-retrieve is active
  Key Test Areas of Concentration:7 M5 w  U+ M$ K
  1. Receive MMS
  2. Manual retrieve MMS7 E/ E5 A* \, h) |
  3. View this notification
  Scenario Result
  1. Receive a notification
  2. Receive a prompt that MMS has expired" W$ d" s' B- W+ V
  3. Successfully view notification
      7.3 非法操做處理用例設計
  非法操做處理測試用例的設計方法主要是從需求方面,相關業務等方面分析。針對不一樣的功能模塊分析可交互的非法操做,最多見的非法操做是拔電池測試,傳輸和下載文件時插拔USB數據線等。
  ● 拔電池的非法操做:主要測試在某個應用正在運行時,拔掉電池,打斷正在進行的操做,檢測終端軟件的反應和其後的補救提示和操做。
  ● 插拔SD卡的非法操做:主要測試功能模塊與SD卡進行交互時插拔SD卡,或移除SD卡後終端軟件進行與SD卡相關的操做,檢測終端軟件的反應和其後的補救提示和操做。
  ● 插拔SIM卡的非法操做:包括測試終端軟件與SIM卡進行數據交互時插拔SIM卡,或移除SIM後終端軟件進行與SIM卡或網絡相關的操做,檢測終端軟件的反應和其後的補救提示和操做。
  ● 插拔USB的非法操做:測試終端軟件與外部設備傳送數據時移除USB,或終端軟件運行應用時鏈接USB並改變相應的鏈接模式,檢測終端軟件的反應和其後的補救提示和操做。
  ● 對於終端軟件升級的非法操做:測試在終端軟件升級時被外界因素干擾後,升級終端軟件正常中斷,檢查終端軟件可啓動恢復機制,終端軟件恢復到未升級的版本並可正常使用,並對下次終端軟件升級無影響。
  非法操做測試用例列舉以下:
  Initial Condition:' h. z: {) {- H7 }! Y6 d
  1. There is at least one push email account
  Key Test Areas of Concentration:' [, t6 M8 O/ @( H! [
  1. Power off when sending an email9 L. S& J6 n* n+ c
  2. Power on and then go on sending the email from outbox/ B( j8 L0 ]5 H, X
  3. Take battery out when receiving emails: o9 m% Q. ~) X2 b. |5 c) N
  4. Restart phone and then go on receiving the emails
  Scenario Result
  1. Verify that the unsent email should be put into Outbox
  2. Verify that the email should be sent out.+ ?9 N2 B/ R# F( V& o' t3 R; b   4. Verify that received emails should not be received again,Unreceived email should be received this time
相關文章
相關標籤/搜索