軟體測試技術及策略 軟體測試面試必備

2021-05-17 14:10:48 字數 4892 閱讀 3897

_軟體測試面試必備

由安博測試空間技術中心提供

軟體測試技術及策略

軟體測試的流程

軟體開發全部過程、活動和任務的結構框架,是從可行性研究到需求分析、軟體設計、編碼、測試、軟體發布維護的過程。最後淘汰。

測試計畫的前期是否需要需求調研?需要

測試具體分幾個階段,每個階段執行的依據是什麼?

計畫測試:需要制定測試計畫整理測試需求

設計測試:要設計測試用例和測試過程;要保證測試用例完全覆蓋測試需求;要根據測試用例實現具體的自動化指令碼或者手工的操作步驟

執行測試:通過自動化測試工具或人手工來執行那些自動化指令碼或手工的操作步驟

評估:要對軟體的質量和測試工作自身的質量做出乙個客觀的評價

開發生命週期中的驗證活動:需求;設計;編碼;測試;安裝;維護

單元測試:unit testing

目標:檢驗程式最小單元有無錯誤(類,檔案,視窗,函式,選單,報表或乙個儲存過程)介面,資料結構,邊界,覆蓋,邏輯

進入條件:**無錯誤地通過編譯或彙編

方法:白盒測試

測試執行人:開發工程師

測試內容:

模組介面:對被測模組,資訊是否能正確地流入和流出

區域性資料結構:模組的工作過程中,其內部的資料能否保持其完整性

邊界條件:在邊界上模組是否能正常工作

覆蓋條件:模組執行是否達到了規定的邏輯覆蓋

出錯處理:檢查模組的錯誤處理設施是否有效

具體要求:

在進行單元測試之前,由專案負責人決定是否進行靜態分析

單元測試的主要形式是結構測試

單元測試的測試計畫應該根據被測單元的性質而制定

語句覆蓋率達到100%

分支覆蓋率達到85%

單元測試有開發部負責開展

整合測試:intergration testing

目標:檢驗組成系統的模組介面有無錯誤;

**實現的系統設計與需求定義是否吻合

進入條件:主要的單元測試完成後,經常與單元測試同步進行

方法:黑盒測試,白盒測試

測試執行人:開發工程師、測試工程師

系統測試:system testing

目標:檢驗組成整個系統的**,以及系統的軟硬體配合有無錯誤

**實現的系統與使用者需求是否吻合

檢驗系統的文件等各種是否完整、有效

模擬驗收測試的要球,檢查系統是否符合使用者的驗收標準

進入條件:多數整合測試完成後

方法:黑盒測試

測試執行人:測試工程師

驗收測試: acceptance testing

目標: 使客戶驗收簽字

系統是否符合實現約定的驗收標準

進入條件:系統測試完成後,在專案組看來開發和測試工作已經全部完成,可以交付使用

方法:黑盒測試

α測試 是由使用者在開發環境下進行的測試,也可以使開發機構內部的使用者在模擬實際操作環境下進行的測試

目的是評價軟體產品的flurps(即功能、局域化、可用性、可靠性、效能和支援)

可以在軟體編碼結束時開始,或在模組(子系統)測試完成後開始,也可在確認測試過程中軟體達到一定的穩定和可靠程度之後再開始

需要開發人員參與

β測試 是由使用者在實際使用環境下進行的測試,這些使用者通常是與公司簽訂一定合同的外部使用者,使用者在使用該產品是願意返回有關錯誤資訊給開發者。

開發人員不在測試現場

主要衡量產品的flurps,著重於產品的支援性,包括文件,客戶培訓和支援產品生產能力

只有當α測試達到一定可靠程度時,才能開始β測試

通常由主持產品發行的人員來管理

測試過程的總結

測試型別物件目的測試依據測試方法

單元測試模組內部的消除區域性模組的模組邏輯設計大量採用

程式錯誤邏輯和功能的錯誤模組外部說明白盒測試

整合測試模組間的集找出與軟體設計相程式結構設計

成和呼叫關係關的程式結構,模黑白結合

塊呼叫關係,介面問題

系統測試整個系統包括對整個系統進行一系統結構設計

系統中的軟硬體系列的整體、有效目標說明書黑盒測試

性測試需求說明書

軟體測試的分類

按測試階段分類

單元,整合,系統,驗收

按測試策略分類

黑白盒(要不要看**),動態靜態(是否執行**、軟體),手工自動

按測試技術方法分類

功能測試,效能測試(包含壓力測試),壓力測試,易用性測試,安裝測試,容錯性測試,相容性測試,安全性測試

常用的測試技術

功能測試

使用測試應用系統的功能需求的黑盒測試方法

應由測試員做,這並不意味著程式設計師在發布前不必檢查他們的**能否工作

執行系統,檢視其功能是否正常實現,是否滿足需求,對於需求沒有涵蓋,但功能實現上部合理的地方與專案經理溝通,進行系統完善。

效能測試

壓力測試

負載測試

易用性測試

安裝測試

安裝測試需要測試些什麼?

安裝測試;執行測試;解除安裝測試

介面測試

配置測試

文件測試

哪些文件需要測試?

聯機幫助;使用者手冊;readme檔案;包裝文字和圖形;市場宣傳材料;授權/註冊登記表/使用者許可協議;標籤;指南、嚮導

相容性測試

測試平台相容

作業系統;應用程式

資料共享相容

版本相容(向前、向後相容)

資料格式相容

剪貼簿標準和規範

安全性測試

恢復測試

測試技術小結

測試用例設計的目的是匯出可能發現錯誤的測試集

測試用例設計的技術主要是白盒和黑盒

白盒測試注重程式的結構,是小規模的低層測試

黑盒測試注重需求的實現,是大規模的高層測試

還有大量的特定軟體系統的測試方法,需要專門的測試技術和指南

測試永無止境,設計測試用例最終目的是為了盡量多的發現問題,在產品發布前解決。

軟體測試策略

我們無法為軟體做窮舉測試,存在著組合**的情況

軟體測試中的「殺蟲劑」現象

我們無法修復所有發現的錯誤

黑盒測試:又稱功能測試,資料驅動測試或給予規格說明書的測試

是對需求的所有輸入條件進行測試

黑盒測試發現的錯誤型別

功能不對或遺漏

介面錯誤

資料結構或外部資料庫訪問錯誤

效能錯誤

初始化和終止錯誤

關注點功能數值介面效能其他

白盒測試: 又稱結構測試,邏輯驅動測試或給予程式的測試

白盒測試發現的錯誤型別

語法錯誤

編譯錯誤

memory leak

performance problem

邏輯問題

判定條件問題

程式設計規範

測試技術

基本路徑

控制結構

基本路徑測試

根據源**匯出流圖

分析程式邏輯複雜度

匯出測試case

優缺點比較

黑盒測試白盒測試

測試依據使用者能看到的規格說明針對功能進行測試 |程式的內部結構

優點能站在使用者立場上進行測試 |能夠對程式內部的特定部位進行覆蓋測試

缺點不能測試程式內部特定部位 |無法檢驗程式的外特性

如果規格說明有誤則無法發現 |無法對為實現規格說明的程式內部欠缺部分進行測試

靜態測試與動態測試

靜態測試:不實際執行被測試的程式而是同國檢查和閱讀等手段來發現錯誤並評估**質量的軟體測試技術

測試物件:軟體文件(使用者類、開發類);源**

分類: **走查walkthrough:開發組內部進行的,採用講解、討論和模擬執行的方式進行的查詢錯誤的活動

**審查inspection:開發組內部進行的,採用講解,提問並使用checklist方式進行的查詢錯誤的活動,一般有正式的計畫、流程和結果報告

技術評審review:開發組、測試組、相關人員聯合進行的,採用講解,提問並使用checklist方式進行的查詢錯誤的活動,一般有正式的計畫、流程和結果報告。

為了使工作效率提高,提出了測試驅動開發——敏捷程式設計

動態測試:實際執行程式並通過觀察程式執行的實際結果來發現錯誤的軟體測試技術

手工測試與自動測試

手工測試:測試人員手動執行軟體進行測試

自動測試:利用測試工具和測試指令碼來進行測試

自動化測試與手工測試的關係

自動化測試是對手工測試的一種補充

自動化測試不可能完全代替手工測試

手工測試和自動化測試乙個都不能少,關鍵是在合適的地方使用合適的測試手段

自動化測試是軟體測試發展的乙個趨勢

自動測試的優勢

對程式的回歸測試更方便,可以極大提高測試效率,縮短回歸測試時間

可以執行更多更繁瑣的測試,自動化的乙個明顯的好處是可以在較少的時間內執行更多的測試

可以執行一些手工測試困難或不可能進行的測試

更好的利用資源,將繁瑣的任務自動化

可以提高準確性和測試人員的積極性,將測試技術人員解脫出來投入更多精力設計更好的測試用例

測試具有一致性和可重複性

測試的復用性

增加軟體信任度

自動測試的缺陷

手工測試比自動測試發現的缺陷更多(85% 15%)

工具本身不具有想象力

不能處理意外事件(如網路中斷)

前期的購置工具、培訓成本高

不能取代手工測試

測試自動化不能提高有效性

測試自動化可能會制約軟體開發,由於自動測試比手動測試更脆弱,所以維護會受到限制,從而制約軟體的開發。

軟體測試的分類總結

測試策略

黑盒/白盒動態/靜態手工/自動冒煙/回歸

測試方法

功能測試介面測試版本測試效能測試壓力測試穩定性測試

容錯性測試隨機測試安裝測試安全測試易用性測試相容性測試

_軟體測試面試必備

測試計畫編寫策略 軟體測試面試必備

軟體測試面試必備 測試計畫描述了如何完成測試,有效的測試計畫會驅動測試工作的完成,使測試執行 測試分析以及測試報告的工作開展更加順利。gg xy w j d9z n5z331549 一 測試計畫的重要性和目的 t x o1 v u e l331549 1 測試計畫的重要性 z3y3v x k0 33...

軟體測試面試準備

44.軟體產品在需求調研階段的工作流程是怎樣的?45.什麼是測試環境?46.什麼是主測試環境?配置主測試環境的原則有哪些?47.什麼是輔助測試環境?輔助測試環境的內容有哪些?48.軟體的設計和編碼階段的工作流程是怎樣的?49.設計和編碼階段的主要工作有哪些?50.整合 系統和驗收階段的工作流程是怎樣...

測試計畫軟體測試面試必備

軟體測試面試必備 測試計畫 x年xx月xx日 文件名稱 測試計畫 位址 郵編 200030 總機fax 目錄第一章總論 1 1.1 專案背景 1 1.2 專案目標 1 1.3 系統檢視 1 1.4 文件目的 2 1.5 文件摘要 2 第二章測試策略 3 2.1 整體策略 3 2.2 測試範圍 4 2...