QA 以前的工作, 重點是把關, 確保從這邊通過後, 品質是足夠可以出貨的. 一當有測出問題, 需要跟主管回報, 並且讓主管了解目前系統品質的狀態.
現在因為 CI/CD 的出現, 在撰寫自動化測試方面, 開發人員必須扮演很重要的角色.他們需要負責這部分, 這樣會比較即時(寫完程式就做, 或是在之前做作), 並且也比較快(RD 寫 code 應該還是比 QA 快得多). 所以撰寫 unit test 和 End 2 End Test, 開發人員會是主力
那 QA 可以做些什麼呢?
基本上 QA 對於品質的嚴謹程度, 以及敏感度, 還是比 RD 好很多, 畢竟這是他們之前的專業. 因此可能在以下方面多有貢獻
(1) 靜態測試
檢視 Spec 和 design
看看需求的完整性和一致性
討論設計是否有考慮周全, 尤其在 error handling 的部分
檢視 RD 寫的測試程式:
看看 case 涵蓋度, 建議哪些要多測
以及 case 最後驗證是否通過的部分是否完整
(2) 探索式測試 (exploratory testing)
雖然 RD 撰寫了不少自動化測試, 但是很多都是偏向單一功能或單一模組, 或者是比較基本的 scenario. 對於比較複雜, 或者是用戶環境類, 或者是不同功能的組合, 這些剛好可以讓 QA 發揮所長
(3) 轉寫輔助測試工作的工具
QA 測試通常需要產生資料, 模擬某些情境, 或是 fake 某些關聯性, 因此會需要一些工具來輔助. 通常工具不會太大, 自己通常可以搞定. 如果太大或許可以利用開源, 或是請開發人員幫忙撰寫.
(4) 測試的策略
整體來說, QA 的測試經驗還是比較豐富, 這時候他可以提出建言, 這次的測試團隊的策略應該如何, 哪些地方要多測, 哪些地方需要小心. 不一定要以他提的為主, 但是他的建議會是重要的參考
某種程度來說, 它就是要讓 continuous testing 可以成形.
因此, 個人覺得之前重點是, QA 是品質把關者. 到了 DevOps 之後, QA 的工作應該是
(1) 品質賦能者: 幫助團隊建立意識, 並且教授品質相關知識
(2) 預防勝於治療: 幫助團隊早期發現問題, 早期治療.
文章標籤
全站熱搜
留言列表