本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
測試 Lambda 耐用函數
使用持久性執行測試 SDKs 在本機和雲端中執行和檢查執行。如需撰寫測試、聲明、雲端執行器、SAM CLI 整合和完整範例,請參閱《 AWS 持久性執行開發套件開發人員指南》中的測試。
雲端測試的 IAM 許可
當您使用雲端執行器或 sam remote invoke 測試部署的耐用函數時,呼叫主體需要許可來叫用函數並讀取其執行歷史記錄。將下列許可連接至您的測試發起人:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:InvokeFunction", "lambda:GetDurableExecution", "lambda:GetDurableExecutionHistory" ], "Resource": [ "arn:aws:lambda:region:account-id:function:function-name", "arn:aws:lambda:region:account-id:function:function-name:*" ] } ] }
將 region、account-id 和 function-name 取代為您的值。
偵錯失敗
當測試失敗時,請檢查執行結果以了解發生了什麼問題。檢查執行狀態,以查看函數是否成功、失敗或逾時。讀取錯誤訊息以了解失敗原因。
檢查個別操作結果,找出行為偏離預期的位置。檢查步驟結果以查看產生了哪些值。驗證操作排序,以確認在預期序列中執行的操作。計數操作以確保建立正確數量的步驟、等待和回呼。
常見問題包括可在重播時產生不同結果的非確定性程式碼、透過重播期間中斷的全域變數共用狀態,以及因條件式邏輯錯誤而缺少操作。使用標準除錯器和記錄來逐步執行函數程式碼和追蹤執行流程。
對於雲端測試,請檢查 CloudWatch Logs 中的執行歷史記錄,以查看詳細的操作日誌。使用追蹤來追蹤跨 服務的執行流程,並識別瓶頸。