系統測試設計的層次

softart發表於2007-10-27
2004年09月01日 02:37:00

系統測試設計的層次

Author:袁琳
MSN:testwin@sohu.com


隨著國內軟體行業的不斷髮展,國內軟體公司也越來越注重於軟體的質量,越來越關注軟體的可靠性,因此,做為質量保證的重要手段,軟體測試過程的實施與管理成為一個熱點,其中系統測試是整個測試活動的一個重要的階段,系統測試的設計也就成為了關注點之一。以下是本人從事系統測試工作中的一些體會。

1、系統測試的定義:
系統測試是針對整個產品系統進行的測試,目的是驗證系統是否滿足了需求規格的定義,找出與需求規格不相符合或與之矛盾的地方。

2、系統測試的物件:
系統測試的物件不僅僅包括需要測試的產品系統的軟體,還要包含軟體所依賴的硬體、外設甚至包括某些資料、某些支援軟體及其介面等。因此,必須將系統中的軟體與各種依賴的資源結合起來,在系統實際執行環境下來進行測試。

3、系統測試的設計
系統測試過程包含了測試計劃、測試設計、測試實施、測試執行、測試評估這幾個階段,而整個測試過程中的測試依據主要是產品系統的需求規格說明書、各種規範、標準和協議等。在整個測試過程中,首先需要對需求規格進行充分的分析,分解出各種型別的需求(功能性需求、效能要求、其他需求等),在此基礎之上才可以開始測試設計工作,而測試設計又是整個測試過程中非常重要的一個環節,測試設計的輸出結果是測試執行活動依賴的執行標準,測試設計的充分性決定了整個系統過程的測試質量。因此,為了保證系統測試質量,必須在測試設計階段就對系統進行嚴密的測試設計。這就需要我們在測試設計中,從多方面來綜合考慮系統規格的實現情況。通常需要從以下幾個層次來進行設計:使用者層、應用層、功能層、子系統層、協議層

3.1、使用者層:
主要是面向產品最終的使用操作者的測試。這裡重點突出的是在操作者角度上,測試系統對使用者支援的情況,使用者介面的規範性、友好性、可操作性,以及資料的安全性。主要包括:
3.1.1、使用者支援測試
使用者手冊、使用幫助、支援客戶的其他產品技術手冊是否正確、是否易於理解、是否人性化。
3.1.2、使用者介面測試
在確保使用者介面能夠通過測試物件控制元件或入口得到相應訪問的情況下,測試使用者介面的風格是否滿足使用者要求,例如:介面是否美觀、介面是否直觀、操作是否友好、是否人性化、易操作性是否較好。
3.1.3、可維護性測試
可維護性是系統軟、硬體實施和維護功能的方便性。目的是降低維護功能對系統正常執行帶來的影響。例如:對支援遠端維護系統的功能或工具的測試。
3.1.4、安全性測試
這裡的安全性主要包括了兩部分:資料的安全性和操作的安全性。核實只有規格規定的資料才可以訪問系統,其他不符合規格的資料不能夠訪問系統;核實只有規格規定的操作許可權才可以訪問系統,其他不符合規格的操作許可權不能夠訪問系統;

3.2、應用層:
針對產品工程應用或行業應用的測試。重點站在系統應用的角度,模擬實際應用環境,對系統的相容性、可靠性、效能等進行的測試。
3.2.1、系統效能測試
針對整個系統的測試,包含併發效能測試、負載測試、壓力測試、強度測試、破壞性測試。併發效能測試是評估系統交易或業務在漸增式併發情況下處理瓶頸以及能夠接收業務的效能過程;強度測試是在資源情況低的情況下,找出因資源不足或資源爭用而導致的錯誤;破壞性測試重點關注超出系統正常負荷N倍情況下,錯誤出現狀態和出現比率以及錯誤的恢復能力。
3.2.2、系統可靠性、穩定性測試
一定負荷的長期使用環境下,系統可靠性、穩定性。
3.2.3、系統相容性測試
系統中軟體與各種硬體裝置相容性,與作業系統相容性、與支撐軟體的相容性。
3.2.4、系統組網測試
組網環境下,系統軟體對接入裝置的支援情況。包括功能實現及群集效能。
3.2.5、系統安裝升級測試
安裝測試的目的是確保該軟體在正常和異常的不同情況下進行安裝時都能按預期目標來處理。例如,正常情況下,第一次安裝或升級、完整的或自定義的安裝都能進行安裝。異常情況包括磁碟空間不足、缺少目錄建立許可權等。還有一個目的是核實軟體在安裝後可立即正常執行。另外對安裝手冊、安裝指令碼等也需要關注。

3.3、功能層
針對產品具體功能實現的測試。
3.3.1、業務功能的覆蓋
關注需求規格定義的功能系統是否都已實現。
3.3.2、業務功能的分解
通過對系統進行黑盒分析,分解測試項及每個測試項關注的測試型別。
3.3.3、業務功能的組合
主要關注相關聯的功能項的組合功能的實現情況。
3.3.4、業務功能的衝突
業務功能間存在的功能衝突情況。比如:共享資源訪問等。

3.4、子系統層
針對產品內部結構效能的測試。關注子系統內部的效能,模組間介面的瓶頸。
3.4.1、單個子系統的效能
應用層關注的是整個系統各種軟、硬體、介面配合情況下的整體效能,這裡關注單個系統。 3.4.2、子系統間的介面瓶頸
例如:子系統間通訊請求包的併發瓶頸。
3.4.3、子系統間的相互影響
子系統的工作狀態變化對其他子系統的影響。

3.5、協議/指標層
針對系統支援的協議、指標的測試。
3.5.1、協議一致性測試
3.5.2、協議互通測試



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=90631


相關文章