「測試是跨領域智慧的結晶」——《軟體品質全面思維:從產品設計、開發到交付,跨越 DevOps、安全與 AI 的實踐指南》
什麼樣的人,可以協助軟體測試?
軟體工程師?測試工程師?使用者?老闆?
而各種不同的角色,會需要什麼樣的知識與技能,才能夠執行軟體測試呢?
其實前面的問題太過籠統,因為「測試」兩個字,其範圍可以被擴張到很大。
因此,我們應該要問,你打算執行哪種測試?你的測試目的是什麼?
設定好「測試」的目標與範圍,接著才有辦法回答,你需要哪些角色,以及他們要在軟體開發生命週期的哪些階段中,運用哪些能力來協助軟體測試。
當然像是單元測試,我們可以很快速的回答,那是屬於軟體工程師在軟體開發過程中負責的部分,搭配著程式碼開發,一併撰寫單元測試的測試程式碼。
但如果是整合測試呢?UI 測試?壓力測試?驗收測試?冒煙測試?安全測試⋯⋯
遇到不同類型的測試,又該是誰?需要哪些能力?在何時測試呢?
這些正是在我們實踐 DevOps 及「測試左移」時,有可能會遭遇的議題。
越是深入思考,就越是能夠理解,測試真的是一件易學難精的事情。