資料驅動測試

數據驅動測試(英語:Data-driven testing)是一種軟件測試的方式,數據驅動測試會配合一個有許多測試輸入及對應的驗證輸出值的表格,而其測試環境設定及控制不會固定在程式碼中。最簡單的數據驅動測試會將表格的某一欄作為輸入,同一列的另一欄則是預期的測試輸出。表格內一般會對應輸入值的邊界或是輸入值分組的邊界。在有些測試中,會從數據庫中讀取測試組態。

簡介

軟件測試中,有許多不同的方法可以應用。這些方法並存的原因是它們在初始建立及維護時所需要的努力程度不同。數據驅動測試的優點是易於增加新的輸入,在產品或是被測系統的輸入值發現新分組時格外方便。以成本的觀點來看,數據驅動測試配合自動化測試的成本很低,但配合人工測試的成本則相當高昂。數據驅動測試和關鍵字驅動測試看似相同,後續會再說明二者的不同之處。

方法概述

  • 數據驅動測試是創立一些測試腳本,和框架中有關的數據集一起執行。框架提供可復用的測試邏輯,以減少維護成本,並提高測試的覆蓋率。輸入及結果(測試準則)的數據可以存放在一個或多個中央數據源或數據庫中,其格式及組織可以依實作方式而不同。

數據驅動測試的數據包括輸入變數及用來確認結果的輸出變數。在較先進的自動化環境中,可以用一些客製化的工具或嗅探器(sniffer)來發掘相關的數據。數據驅動測試的框架播放發掘到的數據,可形成一個自動化的回歸測試工具。測試腳本中包括在被測系統中的瀏覽,讀取數據來源,記錄測試狀態及資訊等。

數據驅動

在數據驅動測試中,任何可能會變動的東西(也稱為變異,包括環境、結束點、測試數據、路徑等)都會和測試邏輯(腳本)分開,成為「外部資產」(external asset),可能是組態或是測試的數據集,而腳本中執行的邏輯則由數據內容來決定。關鍵字驅動測試和數據驅動測試類似,不過關鍵字驅動測試的測試用例是包含在數據的組合中,而不是嵌入在測試腳本中。

數據驅動測試所用的數據庫可以包括:

相關條目

參考資料