API 測試自動化:有了 OpenAPI Spec,為何你還在手寫測試腳本?談「規格驅動測試」的落地實踐

QA 團隊的無盡輪迴 在軟體開發的現場,我們常看到一種令人心累的循環: 後端工程師修改了 API 的回傳格式(例如把 date 改成了 timestamp)。 但他忘了通知 QA 團隊,文件也沒更新。 晚上 CI/CD Pipeline 跑自動化測試時,整片紅燈(測試失敗)。 QA 隔天早上上班,花了一整天檢查到底是系統壞了,還是腳本過期了,最後發現只是欄位改名。 QA 憤怒地手動修改 JMeter 或 Postman 腳本,然後下週同樣的事情再發生一次。 如果你對這個場景感到熟悉,那麼問題可能不在於你們的測試工具不夠強,而在於你們的測試策略「沒有跟上規格」。 什麼是 Spec-Driven Testing (基於規格的測試)? 回顧我們上一篇談到的 Design-First(設計優先)。當我們在 SmartBear Swagger (SwaggerHub) 裡把 OpenAPI Spec (Swagger) 定義好之後,這份文件不只是一份文檔,它是「單一信任來源 (Single Source of Truth)」。換句話說,這份文件應該作為所有開發、測試、維運的「最終與唯一依據」。 既然我們已經有了這份「標準答案」,為什麼還要浪費人力去手寫測試腳本?(又或者企業根本沒有足夠的人力去做這件事) Spec-Driven Testing 的核心邏輯是:直接拿這份 Spec 來自動生成測試腳本。 這就像是蓋房子時,直接用 CAD 設計圖來設定驗收儀器的參數,而不是讓驗收人員拿著尺一個一個去量。 手寫腳本 vs. 自動生成:維護成本的對決 […]