圖1 某個資料通信産品中的測試類型
1)測試類型定義
(1)功能性(functionality)
功能性指的是軟體或者産品在指定條件下使用時,提供滿足明确和隐含要求的功能的能力。通過評價特征集和程式的能力、傳遞的函數的通用性、和整體系統的安全性來評估。例如:假如nif端口收到的資料包外層ethertype類型和端口的vlan s-tag ethertype不一樣,那麼将資料包看成是untagged的類型,并給資料包加上一個相應的vid類型。
(2)可靠性(reliability)
(3)易用性(usability)
(4)可移植性(migration)
(5)配置(configuration)
配置是指産品或者軟體在運作狀态下,是否能夠按照提供的參數範圍進行配置。例如:mac位址的老化時間的範圍是15秒到3825秒之間,并且以15秒作為步長,老化時間的預設值是300秒,即5分鐘。
(6)容量(volume)
容量是指産品或者軟體在運作狀态下,是否能夠達到需求要求的最大容量值。例如:假如vlan是802.1ad模式,mac位址的學習模式是ivl。在ivl模式中,最多可以建立的vlan數是256。
(7)性能(performance)
性能指的是軟體或者産品在典型的配置運作條件下,它的處理速度、響應時間、資源消耗、吞吐量、效率、丢報率等。例如:rstp的收斂時間不能超過15秒。
(8)一緻性(compliance)
一緻性在這裡主要是指協定的一緻性,即系統實作的協定和标準、規範或者行業标準之間的符合程度。例如:vlan的幀結構應該和ieee 802.1q 1998标準保持一緻。
2)應用測試類型
測試類型的定義需要綜合考慮各個方面的輸入,并且它并不是一次性的測試活動。随着測試對象的變化、測試人員經驗技能等的增加,需要不斷更新測試類型,以反映知識、技能和經驗的繼承。
下面以大家熟知的手機呼叫功能為例,根據前面定義的測試類型,簡單細化得到了一些測試條件。從該案例中,我們可以看到通過測試類型是如何幫助測試人員拓闊思路,進而提高測試覆寫率的(實際的測試用例要複雜和全面一些,這裡隻是作為一個例子進行講解)。
表1 測試類型在手機呼叫功能中的應用
測試類型
測試條件:手機的基本呼叫功能
功能性
- 手機作為主叫,呼叫其他手機号碼 - 手機作為主叫,呼叫特殊号碼 - 手機作為被叫,接聽電話 - 手機作為被叫,拒絕接聽電話 - 手機作為主叫,主動挂機/被動挂機 - 手機作為被叫,主動挂機/被動挂機
易用性
- 手機号碼輸入是否簡單友善? - 手機接聽是否友善? - 手機拒絕接聽是否友善? - 通話狀态顯示是否簡單易懂? - 其他操作是否友善?
配置
- 呼叫轉移配置 - 呼叫限制配置 - 呼叫等待配置 - ip電話配置 - 自動回撥配置
性能
- 最長待機時間測試 - 最長通話時間測試 - 每個小時通話12次,每次5分鐘,檢查待機時間
可靠性
- 呼叫異常号碼 - 作為主叫,通話時間保持24小時 - 作為被叫,通話時間保持24小時 - 在充電狀态下,作為主機呼叫72小時 - 在充電狀态下,作為被叫保持72小時 - 通話過程中關機重新開機 - 通話過程中拔掉電闆 - 通話過程中電池沒有電了
可移植性
- 手機軟體版本從1.0更新到2.0 - 在2.0版本中恢複1.0版本的内部資料庫
容量
- 同時可以接聽的電話數目 - 同時可以呼叫的電話數目
一緻性
- 與電話呼叫相關的标準與規範一緻性檢查
相關連結:
<a href="http://www.51testing.com/?action-viewnews-itemid-817298" target="_blank">軟體測試類型/缺陷分類的擷取</a>
====================================分割線================================
最新内容請見作者的github頁:http://qaseven.github.io/