亞馬遜(Amazon,$AMZN)雲端事業 AWS 公開本機測試工具 AWS Emulator,程式碼撰寫與審查交由 AI 代理負責。即使測試在模擬器中通過,也不代表應用程式的安全性或與 AWS 全部功能的相容性獲得保證。
AWS於11日推出 AWS Emulator。開發者無須 AWS 帳戶或部署至雲端,即可透過 AWS CLI 和 SDK 向本機模擬器發送請求,工具本身不另收費。詳情見AWS發布說明。
馬修·戈德堡(Matthew Goldberg)AWS資深首席工程師在介紹開發流程的文章中表示:「我們團隊沒有撰寫或審查模擬器程式碼。」他說明,AWS團隊設計了開發流程,但沒有親自編寫或審查程式碼。
人員負責設定產品的工作範圍與驗證標準,程式碼實作和審查則由 AI 代理負責。人員的工作是界定模擬器應支援哪些功能,以及必須符合哪些標準。
開發流程分為三組代理。第一組根據在實際 AWS 上確認的行為建立測試;第二組在模擬器中執行相同測試,找出差異;第三組則修正發現的問題。
修改後的程式碼必須通過建置、程式碼規範、安全性,以及與實際 AWS 行為是否一致等檢查,才能納入工具。代理的工作不只包括寫程式,也涵蓋依照發布標準檢查變更。
相容性測試不只比對 API 回應,也會比較在 AWS 執行操作後產生的資源、資料與錯誤,確認這些結果是否與模擬器一致。
AWS公開各項服務的測試通過情況。對於不支援的操作,模擬器會回傳錯誤,讓開發者知道該操作無法在模擬器中測試。
這種測試用來確認特定工作流程中,實際 AWS 與模擬器的行為有多一致。AWS稱之為「保真度(fidelity)」測試,測試結果僅適用於測試涵蓋的範圍。
AWS的評估套件儲存庫指出,測試未涵蓋的行為仍屬未經驗證。部分情境的測試結果一致,不能據此認定模擬器與 AWS 服務的所有功能都相容。
開發者應確認自己使用的 AWS 服務與操作是否包含在公開測試中。測試通過情況可用來了解支援範圍,但不等於整體功能的相容性認證。
安全性評估也有範圍限制。AWS在安全文件中說明,模擬器不會以與實際 AWS 相同的方式評估 IAM 權限、S3 儲存貯體政策與 KMS 金鑰政策,也不支援跨帳戶及跨區域操作。
因此,某些請求可能在實際 AWS 中遭拒,卻在模擬器中成功。代理審查過模擬器程式碼的安全性,不代表開發者建立的應用程式也已通過安全驗證。
開發者論壇 Hacker News 上,有人歡迎 AWS 提供官方本機測試工具;也有人指出,仍需進一步了解工具與實際 AWS 的相符範圍,以及長期維護計畫。相關討論見Hacker News 討論串。
AWS建議開發者在部署至正式環境前,使用實際 AWS 測試完整應用程式與安全設定。AWS Emulator 可用於本機開發,正式上線前仍應在實際環境另行驗證。
Comment 0