[ADP-606] CloudEvents 測試標記
概述
本 ADP 定義了一種使用 CloudEvents 上下文屬性來標記測試事件的方法,以便於事件測試和驗證。
指南
必須使用 CloudEvents 上下文屬性機制來添加測試標記屬性。
測試標記屬性必須命名為
test
。test
屬性必須是scope.type
格式的字符串值,其中:scope
標識測試範圍(例如 "order"、"product"、"user")type
指定測試類型(例如 "perf"、"e2e")
事件消費者應檢查
test
屬性並相應地處理測試事件。測試事件不應在生產系統中觸發關鍵操作或狀態更改。
事件生產者應提供控制測試事件生成的機制。
實施建議
在事件生產環境中實現開關以控制帶有
test
屬性的事件生成。在事件消費者中實現邏輯以識別和適當處理測試事件。
在日誌和監控系統中區分測試和生產事件。
考慮實現清理機制以定期刪除或歸檔測試事件。
示例
以下是帶有 test
屬性的 CloudEvent 示例:
json
{
"specversion" : "1.0",
"type" : "com.example.someevent",
"source" : "/mycontext",
"id" : "C234-1234-1234",
"time" : "2023-06-01T10:30:00Z",
"test" : "integration.automated",
"data" : {
"message" : "這是一個測試事件"
}
}
測試場景
測試事件生成: 驗證事件生產者是否可以正確生成帶有
test
屬性的事件。測試事件處理: 確保事件消費者可以識別測試事件並採取適當的行動。
混合事件流: 驗證系統在混合測試和生產事件流中的行為。
測試模式切換: 驗證動態啟用和禁用測試事件生成的能力。
範圍和類型驗證: 確保不同的
scope.type
組合被正確生成和處理。
安全考慮
確保測試事件不會無意中暴露敏感資訊。
實施適當的訪問控制以防止未授權用戶生成測試事件。
監控測試事件的使用以檢測潛在的濫用或異常行為。