

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 測試環境


品質保證 (QA) 人員使用測試環境來驗證功能。它們會在完成測試後核准變更。當他們核准時，分支會移至下一個環境：預備。在 Gitflow 中，此環境及其上其他環境只能從`release`分支進行部署。`release` 分支是以包含計劃功能的`develop`分支為基礎。

## 存取


根據最低權限原則指派許可。開發人員對測試環境的存取應少於他們對開發環境的存取。QA 人員需要足夠的許可來測試功能。

## 建置步驟


此環境中的建置程序僅適用於使用 Gitflow 策略時的錯誤修正。向`bugfix`分支建立合併請求會自動啟動建置。

1. 使用 [git-secrets](https://github.com/awslabs/git-secrets) (GitHub) 掃描敏感資訊

1. 填入原始碼

1. 如果適用，請建置和編譯原始程式碼

1. 執行單位測試

1. 執行程式碼涵蓋範圍分析

1. 執行靜態程式碼分析

1. 建置 IaC

1. 執行 IaC 安全分析

1. 擷取開放原始碼授權

## 部署步驟


在開發環境中部署之後，在測試環境中自動啟動`release`分支 (Gitflow) 或`main`分支 (Trunk 或 GitHub Flow) 的部署。以下是測試環境中的部署步驟：

1. 在測試環境中部署`release`分支 (Gitflow) 或`main`分支 (Trunk 或 GitHub Flow)

1. 暫停以進行指定人員的手動核准

1. 下載已發佈的成品

1. 執行資料庫版本控制

1. 執行 IaC 部署

1. 執行整合測試

1. 執行效能測試

1. 品質保證核准

## 移至預備環境之前的期望

+ 開發和 QA 團隊已執行足夠的測試，以滿足組織的需求。
+ 開發團隊已透過`bugfix`分支解決任何發現的錯誤。