什么是魯棒性測試


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



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM