在測試是一門學問,關於測試案例中,我們談到如何設計測試案例,接下來,我們來探討執行測試。
提到執行測試,多數人首先想到的是自動化測試。的確,執行測試的基本方式就是手動測試和自動測試,不過我想沒有團隊只做自動測試而沒有手動測試,本篇將聚焦在手動測試。
我將執行測試分成三個步驟,建立環境、執行測試、回報結果。
建立環境
執行測試前要先建立環境,換個專業的說法,就是部署。
軟體專案通常會有幾個不一樣的環境,如開發環境、測試環境、預備環境等。不同的環境可能有不同的部署方式,而成熟的團隊則是會建立自動部署機制,讓部署這件事情變得容易。
一般來說,都是在測試環境或是預備環境進行測試,至於由誰負責部署,實務上都是端看團隊的規劃。
對品質工程師來說,進行測試前,務必要確認部署完成,避免做白工。
執行測試
執行測試沒有什麼撇步,原則上就是照著測試案例,逐條驗證是否通過。
不論產品是雲端平台或行動應用程式,快樂路徑 (happy path) 的測試通常都很順利,因為這類的測試案例是最常見的使用情境,不需要複雜的前提條件。
但是執行測試真正的挑戰,多半是快樂路徑之外的測試案例,如錯誤處理,或是極端情況,甚至是競爭條件 (race condition),這些一般使用很難發生的案例,都需要特別的測試手法,才能模擬出這些情境。
身為品質工程師,不光要了解產品的系統,也必須熟悉一些常用的測試工具,才能有效率的執行測試。
回報結果
測試完成,通常會發現問題 (bug),接著就是要回報問題。
多數團隊應該都有使用問題追蹤系統,讓團隊更容易掌握產品的狀況。
回報問題時,有個很重要的前提必須認知,這個問題不會只有你在看,除了 RD,還有專案經理,甚至是設計師,都有可能會看這個問題,因此團隊通常都會制定回報格式,規定必須附上的相關資訊。
品質工程師除了回報問題,甚至還可以指出問題的根本原因,分析影響範圍。當遇到複雜難解的問題時,這些資訊都可以幫助團隊做判斷以及決策。
其實上述三個步驟中,最容易發生變數的是建立環境。
廣義來說,建立環境的定義,是要進行測試的功能,在這個環境都可以正常運作。
試想你是否遇過這些情況:
- 環境參數未正確設定,功能無法正常運作
- 功能 A 開發完成,但功能 B 未開發完成
- 問題修正後,重新部署失敗
實務上遇到這些情形時,往往會造成執行測試的困難,規劃的測試時程因此被打亂,但還是要如期完成測試。
優秀的品質工程師,除了執行測試的能力,也一定了解開發部署流程,以及掌握專案的進度。