軟體測試的工作過程

2021-08-25 04:37:57 字數 3787 閱讀 1441

測試計畫→ 測試設計→ 測試開發→ 測試執行→ 測試評估→測試報告→缺陷跟蹤

測試計畫的定義:

敘述了預定測試活動的範圍、途徑、資源及進度安排文件。它確認了測試的專案、被測特徵、測試任務、人員的安排、以及任何偶發計畫的風險

第一部分:測試計畫

測試計畫的問題:

1、測試計畫經常是等到開發周期後期才開始實行,使得沒有時間有效的執行計畫;

2、測試計畫的組織者可能缺乏client/server測試經驗;

3、測試的量度和複雜性可能太大,沒有自動化工具,很難計畫和控制。

測試計畫最重要的一部分內容就是如何考慮測試策略:

測試策略的定義:  

測試策略描述測試工程的總體方法和目標。描述目前在進行哪一階段的測試(單元測試、整合測試、系統測試)以及每個階段內在進行的測試種類(功能測試、效能測試、壓力測試等)。

測試策略包括

1、要使用的測試技術和工具;

2、測試完成標準;

3、影響資源分配的特殊考慮例如測試與外部介面或者模擬物理損壞、安全性威脅。

測試計畫最關鍵的一步就是將軟體分解成單元,寫成測試需求。

測試需求有很多分類方法,最普通的一種就是按照商業功能分類。把軟體分解成若干個單元部分有幾個好處:

1、測試需求是測試設計和開發測試用例的基礎,分成單元可以更好地進行設計;

2、詳細的測試需求是用來衡量測試覆蓋率的重要指標;

3、測試需求包括各種測試實際和開發以及所需資源。

怎樣估計測試工作量:

1、效率假設:即測試隊伍的工作效率。對於功能測試,這主要依賴於應用的複雜度,視窗的個數,每個視窗中的動作數目。對容量測試,主要依賴於建立測試所需資料的工作量大小。

2、測試假設:為了驗證乙個測試需求所需測試動作數目。

3、應用的維數:應用的複雜度指標。例如要加入乙個記錄,測試需求的維數就是這個記錄中域的數目。

4、所處測試週期的階段:有些階段主要工作都在設計,有些階段主要是測試執行。

測試資源:

1、人力資源

測試經理

為測試專案提供總體方向。開發測試計畫、徵集並監督測試人員、申請系統資源、監視並匯報工作程序、測試評估、測試需求的分解。

測試工程師---- 設計和開發

設計:對被測軟體的詳細了解、分解測試需求的技能、選擇在c/s環境下用來驗證測試需求的技術。

開發:熟悉sqa、vb、和指令碼語言。

測試工程師---- 執行

負責測試執行和記錄結果。需要能夠安裝系統,網路知識,初始化資料庫和其他初始條件。重要的是診斷能力。

測試系統管理者

每個測試專案必須指定乙個專人負責管理sqa suite。包括在伺服器上安裝儲存庫,安裝印表機連線,執行備份,以及其他維護工作。管理者必須高度熟悉sqa,網路工作經驗。

2、系統資源

安裝sqa suite的硬體和軟體環境

資料庫伺服器

該伺服器必須專用於

測試工作,能夠重置某些初始值,包括系統日期和時間等。

第二部分:測試設計

測試設計的定義:

當測試計畫完成之後,測試過程需要進入軟體設計和開發階段。軟體測試設計時間裡在計畫書的基礎上,認真理解測試計畫的測試大綱、測試內容以及測試通過的準則,建立測試用例來完成測試內容的、典型的邏輯轉換,作為測試的實施依據,以實現所確定的測試目標。

測試設計的問題

1、不做測試設計,測試過程也是胡亂建立的。

2、測試設計不詳細,不是基於可量度的測試策略,例如測試計畫覆蓋乙個集合或者測試需求的乙個子集。

3、測試過程沒有採用最好的技術來檢驗windows c/s結構的測試需求

測試用例的選擇規則

1、選擇與測試需求的實質部分最相關的測試用例。

2、選擇的測試用例應該不容易應用程式的改變的影響。

生成測試需求報告

↓ 指定測試過程

↓ 指定測試用例(可選)

↓ 回顧測試覆蓋率

第三部分:測試開發

測試開發的定義:

根據當初的測試設計來進行測試用例的編寫,測試資料的準備等等圍繞與測試設計相關的工作活動內容

輸入:被測軟體、基於測試需求的測試設計

輸出:測試過程和測試用例

目標:1、建立可以重用的測試過程和測試用例

2、維護測試過程、測試用例與相關測試需求的一一對應。

測試開發的問題:

1、測試開發很亂,與測試需求或測試策略沒有對應性

2、測試過程不可重複或不可重用

3、測試過程被作為乙個程式設計任務來執行,導致指令碼太長,不能滿足軟體移植性的要求。

錯誤處理

當測試過程發生錯誤時,有幾種解決辦法:

1、跳轉到別的測試過程

2、呼叫乙個能夠清除錯誤的過程

3、退出過程,啟動另乙個

4、退出過程和應用程式,重新啟動啟動windows,在失敗的地方重新開始測試

測試開發的步驟

1、設立測試開發環境

2、錄製和回放原型過程

原型過程指出所有未知視窗控制,使得他們都能象標準視窗那樣動作或者沒有特別的動作,把他們都劃歸為generic型別。通過這個過程,sqa robot就知道該怎樣處理應用中的特殊控制。

1、把recording option 中的define unknown object as type generic選項設定為off

2、使用的過程識別符號要可以被覆蓋,或者能被刪掉。因為這只是個原型,用來教sqa robot 錄製的過程

3、錄製測試過程和測試用例

1、錄製模組測試過程和與測試需求最低層對應的測試用例;

2、錄製初始化過程;

3、錄製導航過程,把前面的過程串起來;

4、測試和除錯測試過程

5、修改測試過程(可選)

6、建立外部資料集合

如果測試過程是用來迴圈一套輸入和輸出資料,就需要建立資料集合。

7、重複測試和除錯測試過程,回到4

第四部分:測試執行

測試執行定義

根據測試計畫的進度安排,參照測試方案和測試用例執行測試的活動叫做測試執行

測試執行的問題

1、自動化測試沒有有效的利用,使得手工測試太多。

2、測試結果的捕獲沒有系統性,而且沒有檢視或調查

3、缺陷報告必須用手工加入缺陷跟蹤系統

具體步驟:

1、建立測試系統

2、準備測試過程

3、執行初始化過程

4、執行測試

5、從終止的測試恢復

6、驗證預期結果

7、調查突發結果

8、記錄缺陷日記

第五部分:測試評估

測試評估的定義

根據測試用例的結果對本次測試進行質量評估,以評估本次測試是否達到預期目標

測試評估的目標

1、量化測試程序

2、生成缺陷和測試覆蓋率的總結報告

測試評估的問題

1、沒有把測試覆蓋率作為報告測試程序的根據,使得不知測試是否結束;

2、沒有做缺陷評估,缺陷評估是量度軟體可行性的重要指標;

3、不使用專門的軟體工具進行資料輸入任務和相應的評估活動,使得這些任務變得繁重累人。

測試覆蓋率

評估測試完成多少的標準

缺陷評估

評估軟體質量的重要指標,通常評估模型假設缺陷的發現是呈泊松分布的;嚴格的缺陷評估要考察在測試過程中發現缺陷的間隔時間長短。評估要估計軟體當前的可靠性並**隨著測試的繼續進行,軟體可靠性會怎樣提高。

具體步驟

1、回顧測試日記

2、評估測試需求的覆蓋率

3、分析缺陷

4、決定是否達到完成測試的標準,沒有滿足標準時

1、再測試

2、降低標準

3、確定軟體的乙個滿足標準的子集,看是否可以發布

DHCP工作過程

dhcp服務的工作過程 如果在區域網中部署了dhcp伺服器,並且客戶端設定為自動獲得ip位址。這樣當dhcp客戶端第一次登入網路的時候,也就是客戶端發現本機上沒有任何ip資料設定,它會向網路發出乙個dhcp discover封包。因為客戶端還不知道自己屬於哪乙個網路,所以封包的 位址會為 0.0.0...

FTP 工作過程

1 ftp伺服器執行ftpd守護程序,等待使用者的ftp請求。2 使用者執行ftp命令,請求ftp伺服器為其服務。例 ftp 202.119.2.197 3 ftpd守護程序收到使用者的ftp請求後,派生出子程序ftp與使用者程序ftp互動,建立檔案傳輸控制連線,使用tcp埠21。4 使用者輸入ft...

ping工作過程

dos 命令,一般用於檢測網路通與不通 也叫時延,其值越大,速度越慢 ping packet internet grope 網際網路包探索器,用於測試網路連線量的程式。ping 發 送乙個 icmp 回聲請求訊息給目的地並報告是否收到所希望的 icmp 回聲應答。它是用來檢查網路是否通暢或者網路連線...