1.決策表
黑盒測試最廣泛使用的用例設計策略之一是決策表技術。這是一種將各種輸入組合及其相應的係統行為製成表格的方法。
由於這個原因,它也被稱為因果表。該技術用於以係統的方式選擇測試用例;它減少了測試時間,並確保軟件應用程序的測試區域得到了充分的覆蓋。
對於在兩個或多個輸入之間具有邏輯鏈接的函數,決策表技術是可以接受的。
2.全對測試
成對測試是全對測試的另一個名稱。它用於測試所有可用的離散值組合。這種組合方法用於測試采用複選框輸入、單選按鈕輸入(單選按鈕在隻有一個選擇時使用,例如選擇性別為男或女)、列表框、文本框等的應用程序。
假設你在一個軟件應用程序中有一個測試功能,有10個字段用於數據輸入,結果是10 10個(1000億)的離散組合的總數,然而測試所有的可能性是困難的,因為它將花費很長時間。
3.因果檢驗
因果圖是一種黑盒測試,它突出了給定結果與影響它的所有因素之間的關係。它是一個用於創建動態測試用例的工具。
當代碼基於用戶輸入動態運行時,就會使用動態測試用例。例如,當您在電子郵件帳戶中輸入可接受的電子郵件時,係統接受它,但當您輸入無效的電子郵件時,係統返回一個錯誤通知。在這種技術中,輸入條件被指定為原因,這些輸入條件的輸出被指定為結果。
因果圖技術基於一組需求,用於確定能夠覆蓋軟件最大測試區域的最小數量的測試用例。
因果圖測試的主要好處是它減少了測試執行時間和成本。
這種技術尋求減少測試用例的數量,同時仍然為所有相關的測試用例提供最大的覆蓋範圍,以實現所需的應用程序質量。
使用像AND、OR和NOT這樣的邏輯運算符,因果圖技術將需求規範轉換為輸入和輸出環境之間的邏輯關係。
4.狀態轉換
狀態轉移的一般定義是“同一情況的各種形式”,狀態轉移方法遵循這一定義。當不同的輸入值呈現給同一個函數時,它被用來捕捉軟件應用程序的行為。
我們都使用自動取款機,當我們從其中取錢時,它最終會顯示賬戶信息。現在我們執行另一筆交易,自動取款機再次顯示賬戶信息;然而,第二筆交易後顯示的信息與第一筆交易後顯示的信息不同,但這兩個細節都是使用相同的ATM功能提供的。這裏使用了相同的函數,但每次輸出都不同;這就是所謂的狀態轉換。在測試軟件應用程序時,當輸入不同的輸入時,該技術檢查函數是否遵循狀態轉換規範。
對於允許有限次數的訪問嚐試的應用程序來說,這是正確的,例如程序的登錄功能,在一定次數的錯誤嚐試後鎖定。讓我們來看看細節:在登錄功能中,我們使用電子郵件地址和密碼;它允許一定數量的嚐試訪問應用程序;一旦達到最大嚐試次數,應用程序就會被鎖定,並發出錯誤消息。
請看圖表:
應用程序中有一個登錄特性,允許用戶最多嚐試三次,之後用戶將被轉發到一個錯誤頁麵。
狀態轉換表
5.用例
用例是功能測試,這是一種黑盒測試,用於根據係統的預期用途從開始到結束識別測試用例。測試團隊使用這種技術構建一個測試場景,可以從頭到尾根據每個功能的功能來運行完整的軟件。
它是業務需求的可視化表示,解釋了最終用戶將如何與程序或應用程序交互。用例為我們提供了最終用戶如何與程序交互的所有不同方法,如下圖所示:
在上麵的圖像(CRS)中可以看到一個用例示例,其中我們有一個連接到客戶需求定義的需求。
誰是用例的作者?
客戶提供應用程序的客戶需求規範,之後開發團隊根據CRS編寫用例,並將其發送給客戶進行審查。