1. 程式人生 > >ST第一章基礎概念

ST第一章基礎概念

1.1程式由程式、資料、文件 測試物件

軟體測試目的:發現儘可能多的軟體缺陷,並期望通過改錯把缺陷統統排除,提高軟體質量

1.2 ST分類

1.2.1 方式分類

(1)靜態測試 :不執行被測物件程式程式碼,閱讀程式程式碼、文件資料 語法錯誤

(2)動態測試:執行被測程式程式碼,與預期結果之間是否存在差異,檢驗程式的正確性、可靠性、有效性

1.2.2 方法分類

1.黑、白、灰盒測試

黑盒:功能測試、資料驅動測試,功能是否能正常使用,不考慮程式的內部結構和內部特徵

等價類劃分:程式的輸入域劃分為若干個區域(等價類),並在每個等價類中選擇一個具有代表性的元素生成測試用例。

輸入條件規定學歷可為:專科、本科、碩士、博士四種之一 

 

邊界值分析法:

程式的需求為: 
1、姓名:1——20個字元,不能包含數字,不能為空 
2、年齡:18——60之間的整數,不能為空 
3、如果填寫資訊正確,給出提示資訊,並在“註冊資訊”文字框中輸入相應註冊資訊 “xxx,年齡”

根據以上的需求,進行資料分析如下:

 

錯誤推測法:基於經驗和直覺推測程式中所有可能存在的各種錯誤,從而有針對性的設計測試用例的方法。

場景法:1、基本流(正確流):模擬使用者正確的操作流程 
目的:驗證軟體的業務流程和主要功能 
2、備選流(錯誤流):模擬使用者錯誤的操作流程 
目的:驗證軟體的錯誤處理能力 

 

白盒:結構測試、邏輯驅動測試,物件是原始碼,花費大量人力物力要求高,只對重點部分進行白盒測試

程式碼檢查法:看程式碼,主要包括:資料引用錯誤;資料宣告錯誤;運算錯誤;比較錯誤;控制流程錯誤;介面錯誤;輸入輸出錯誤

走查: 能在程式碼中對錯誤進行精確定位,降低除錯成本;可以發現成批的錯誤,便於一同得到修正。

同行評審的內容:

 

管理評審:對專案管理體系的適應性和管理活動的有效性進行評價。
技術評審:對產品以及各階段的輸出內容進行評估。
文件評審:包括需求評審(使用者需求規格說明、產品需求說明、功能規格說明等),設計評審(軟體總體設計規格說明、詳細設計規格說明等),程式碼評審,質量驗證評審(測試計劃、測試用例)。
過程評審:通過對流程的控制,保證SQA組織定義的軟體過程在專案中得到遵循,同時保證質量、保證方針能更快更好地執行。

靜態結構分析法:不實際執行程式而通過詞法分析、語法分析、控制流、資料流等技術對原始碼進行掃描分析

反彙編(Disassembly):把目的碼轉為彙編程式碼的過程,也可以說是把機器語言轉換為組合語言程式碼、低階轉高階的意思,常用於軟體破解(例如找到它是如何註冊的,從而解出它的註冊碼或者編寫註冊機)、外掛技術、病毒分析、逆向工程、軟體漢化等領域。學習和理解反組合語言對軟體除錯、漏洞分析、OS的核心原理及理解高階語言程式碼都有相當大的幫助,在此過程中我們可以領悟到軟體作者的程式設計思想。總之一句話:軟體一切神祕的執行機制全在反彙編程式碼裡面。

動態除錯工具
OD、DEBUG、x64Dbg等
靜態分析工具
IDA Pro、C32Asm等

動態測試中的邏輯覆蓋:

按照其對測試的有效程度,又將其劃分為由弱到強的6種:語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋、路徑覆蓋。

1.語句覆蓋每條語句至少執行一次。 2.判定覆蓋每個判定的每個分支至少執行一次。 3.條件覆蓋每個判定的每個條件應取到各種可能的值。 4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。 5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。 6.路徑覆蓋使程式中每一條可能的路徑至少執行一次。

https://blog.csdn.net/liujian619/article/details/45270813

1.2.3 階段分析