E2E 測試平台 · 文件目錄
平台文件 / 04 資料字典規格與驗收參考

04 資料字典

主要讀者:DBA、後端研發工程師、測試案例維護者與整合工程師。

04 資料字典 圖 1
點擊圖片可放大、縮小或關閉;放大後可捲動查看。

1 範圍與讀法

本字典涵蓋 E2E 測試平台 17 張 QA 表、186 個持久映射欄位與 76 個基礎模型輔助欄位,以及六種可執行步驟的 JSON 設定。資料表都位於 qa schema;下列分組是管理、執行與證據責任,不是額外建立的 schema。

1-1 目錄

ERD、索引、資料責任與並行控制見 03 資料模型與儲存。API 請求與回應以 openapi.yaml 為準。

2 定義與排程

2-1 qa.qa_c001:專案

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
project_num/projectNum 專案ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
com_num/comNum 公司ID Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_name/projectName 專案名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_code/projectCode 專案縮寫 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_desc/projectDesc 描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String

2-2 qa.qa_c002:測試環境

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
env_num/envNum 環境ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamp;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_num/projectNum 專案ID Long;歷史 bigint 邏輯 FK → qa_c001.project_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
env_name/envName 名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
env_desc/envDesc 描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-3 qa.qa_c003:測試群組 Suite

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
suite_num/suiteNum 測試群組ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamp;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_num/projectNum 專案ID Long;歷史 bigint 邏輯 FK → qa_c001.project_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
parent_num/parentNum 上層案例群組,根為0, 可巢狀 Long;歷史 bigint 邏輯 FK → qa_c003.suite_num 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
suite_name/suiteName 案例群組名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
suite_desc/suiteDesc 案例群組描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
suite_order/suiteOrder 順序 Integer;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
category/category 測試類別:1.PLATFORM,2.JUNIT String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-4 qa.qa_c004:測試案例 Case

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
case_num/caseNum 測試案例ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamp;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
suite_num/suiteNum 群組ID Long;歷史 bigint 邏輯 FK → qa_c003.suite_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_name/caseName 案例名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_desc/caseDesc 案例描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_type/caseType 案例類型:1 NORMAL、2 BEFORE_ALL、3 BEFORE_EACH、4 AFTER_EACH、5 AFTER_ALL;hooks 由清單處理,未證實每類限一筆 String;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_order/caseOrder 順序 Integer;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
depends_on/dependsOn 前置案例 ID 陣列字串;現況只攔截查得的 FAILED,未限定本次 Run,不能保證所有前置皆成功 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 案例 ID 陣列的字串;非獨立關聯表
is_deleted/isDeleted 軟刪除 Boolean;歷史 boolean — 模型必填;部署待核對;歷史不可空 歷史:false;部署待核對 Unique/Check 未核對
category/category 測試種類:1.PLATFORM,2.JUNIT String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-5 qa.qa_c013:案例步驟 Step

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
step_num/stepNum 步驟流水號 Long PK(映射) 模型必填;部署待核對 未取得;部署待核對 實體 PK 待核對
create_at/createAt 建立時間 String;SQL ::timestamptz — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
create_by/createBy 建立人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_at/updateAt 更新時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_by/updateBy 更新人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
case_num/caseNum 案例ID 關聯qa_c004 Long 邏輯 FK → qa_c004.case_num 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
step_order/stepOrder 步驟順序 Integer — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
step_type/stepType 步驟類型:1 HTTP、2 SQL_COMPARE、3 PRE_SQL、4 SQL_TRANSFER、6 INVOKE、7 SQL_SELECT_COMPARE;5 停用 String — 模型未標示;部署待核對 未取得;部署待核對 有效代碼 1、2、3、4、6、7;非 DB Check 證據
step_exec/stepExec 步驟執行內容 String;SQL ::json — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
step_remark/stepRemark 步驟備註 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
step_name/stepName 步驟名稱 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-6 qa.qa_c005:測試計畫 Plan

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
plan_num/planNum 計畫ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_num/projectNum 專案ID Long;歷史 bigint 邏輯 FK → qa_c001.project_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
plan_name/planName 名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
plan_desc/planDesc 描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-7 qa.qa_c006:計畫案例集合

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
case_plan_num/casePlanNum 集合ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
case_num/caseNum 案例ID Long;歷史 bigint 邏輯 FK → qa_c004.case_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 計畫+案例為集合語意;未證實複合 Unique
plan_num/planNum 計畫ID Long;歷史 bigint 邏輯 FK → qa_c005.plan_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 計畫+案例為集合語意;未證實複合 Unique

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createAt 建立時間 String
createBy 建立人員 Long
createByName 建立人員名稱 String
updateAt 更新時間 String
updateBy 更新人員 Long
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-8 qa.qa_c007:排程觸發 Trigger

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
trigger_num/triggerNum 計畫觸發ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
plan_num/planNum 測試計畫ID Long;歷史 bigint 邏輯 FK → qa_c005.plan_num;歷史有 FK 宣告 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
env_num/envNum 環境ID Long;歷史 bigint 邏輯 FK → qa_c002.env_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
notice_group_code/noticeGroupCode 通知群組 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
trigger_name/triggerName 觸發名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
trigger_desc/triggerDesc 描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
is_enabled/isEnabled 是否執行 Boolean;歷史 boolean — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
is_included/isIncluded 是否寫入總表 Boolean;歷史 boolean — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 是否納入總表,不是寄信開關
cron/cron 定時 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
next_run_time/nextRunTime 下次執行時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
last_run_time/lastRunTime 最後執行時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

2-9 qa.qa_c012:環境設定

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
config_num/configNum 變數設定ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamp;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
env_num/envNum 環境ID Long;歷史 bigint 邏輯 FK → qa_c002.env_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 環境+鍵需一致;未證實複合 Unique
config_key/configKey 名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 環境+鍵需一致;未證實複合 Unique
config_value/configValue 值 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 可能含敏感設定;不得直接放入公開報告

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

3 執行結果

3-1 qa.qa_c008:測試執行 Run

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
run_num/runNum 執行 ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
project_num/projectNum 專案ID Long;歷史 bigint 邏輯 FK → qa_c001.project_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_name/runName 名稱 String;歷史 varchar — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_desc/runDesc 描述 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_status/runStatus 執行狀態:1 建立、2 執行中、3 完成、4 中斷、5 待重試、6 忽略;完成不代表所有案例通過;強制關閉也可能殘留執行中,須隔日核對 String;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:1;部署待核對 Unique/Check 未核對
trigger_num/triggerNum 計畫觸發ID Long;歷史 bigint 邏輯 FK → qa_c007.trigger_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
trigger_record/triggerRecord 計畫觸發 紀錄 String;SQL ::json;歷史 json — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 本次設定記錄;非完整不可變版本
plan_num/planNum 測試計畫ID Long;歷史 bigint 邏輯 FK → qa_c005.plan_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
plan_record/planRecord 測試計畫 紀錄 String;SQL ::json;歷史 json — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 本次設定記錄;非完整不可變版本
env_num/envNum 環境ID Long;歷史 bigint 邏輯 FK → qa_c002.env_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
env_record/envRecord 環境 紀錄 String;SQL ::json;歷史 json — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 本次設定記錄;非完整不可變版本
is_included/isIncluded 是否寫入總表 Boolean;歷史 boolean — 模型必填;部署待核對;歷史不可空 歷史:true;部署待核對 Unique/Check 未核對
exclude_comment/excludeComment 不寫入總表原因 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_start_time/runStartTime 執行起始時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_end_time/runEndTime 執行結束時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_log/runLog 執行log String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
retry_count/retryCount 重試次數欄位;欄位存在不代表目前會自動重跑 Integer — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
expected_suite_count/expectedSuiteCount 預期執行群組數 Integer — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
expected_case_count/expectedCaseCount 預期執行案例數 Integer — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
pipeline_info/pipelineInfo CI pipeline 資訊 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

3-2 qa.qa_c009:群組執行結果

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
run_suite_num/runSuiteNum 群組執行結果ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_num/runNum 執行ID Long;歷史 bigint 邏輯 FK → qa_c008.run_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
suite_num/suiteNum 案例群組ID Long;歷史 bigint 邏輯 FK → qa_c003.suite_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
suite_record/suiteRecord suite 原封不動 String;SQL ::json;歷史 json — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 本次設定記錄;非完整不可變版本
suite_status/suiteStatus 群組執行狀態:1 建立、2 執行中、3 通過、4 失敗、5 執行異常、6 相依失敗 String — 模型未標示;部署待核對 未取得;部署待核對 欄位存在;新增 RunSuite 路徑未填此欄

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

3-3 qa.qa_c010:案例執行結果

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
run_case_num/runCaseNum 案例執行結果ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
create_at/createAt 建立時間 String;SQL ::timestamptz;歷史 timestamptz — 模型必填;部署待核對;歷史不可空 歷史:now();部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long;歷史 bigint — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_at/updateAt 異動時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long;歷史 bigint — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
run_suite_num/runSuiteNum 群組執行結果ID Long;歷史 bigint 邏輯 FK → qa_c009.run_suite_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_num/caseNum 案例ID Long;歷史 bigint 邏輯 FK → qa_c004.case_num 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_record/caseRecord case_record 原封不動 String;SQL ::json;歷史 json — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 本次設定記錄;非完整不可變版本
case_status/caseStatus 當次案例狀態:0 未執行、1 建立、2 執行中、3 通過、4 失敗、5 執行錯誤、6 相依失敗、7 中止 String;歷史 int — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_start_time/caseStartTime 執行起始時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_end_time/caseEndTime 執行結束時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
case_throwable/caseThrowable 案例錯誤及異常紀錄 String — 模型未標示;部署待核對 未取得;部署待核對 欄位存在;例外路徑未保證填值

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

3-4 qa.qa_c011:步驟執行結果

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
run_step_num/runStepNum 步驟執行結果ID Long;歷史 bigserial PK(映射) 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 歷史有 PK
run_case_num/runCaseNum 案例執行結果ID Long;歷史 bigserial 邏輯 FK → qa_c010.run_case_num 模型必填;部署待核對;歷史不可空 歷史:sequence 自增;部署待核對 Unique/Check 未核對
step_order/stepOrder 步驟順序 Integer;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_type/stepType 當次步驟類型:1 HTTP、2 SQL_COMPARE、3 PRE_SQL、4 SQL_TRANSFER、6 INVOKE、7 SQL_SELECT_COMPARE String;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 有效代碼 1、2、3、4、6、7;非 DB Check 證據
step_exec/stepExec 步驟 String;SQL ::json;歷史 json — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_status/stepStatus 當次步驟結果:1 通過、2 失敗、3 執行異常、4 未啟用 String;歷史 int — 模型必填;部署待核對;歷史不可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_result/stepResult 回傳結果資料 String;歷史 json — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_error/stepError 執行錯誤訊息 String;歷史 varchar — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_start_time/stepStartTime 執行起始時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_end_time/stepEndTime 執行結束時間 String;SQL ::timestamptz;歷史 timestamptz — 模型未標示;部署待核對;歷史可空 歷史:未宣告;部署待核對 Unique/Check 未核對
step_num/stepNum 步驟ID 關聯qa_c012 Long 邏輯 FK → qa_c013.step_num 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
post_proc_resp/postProcResp 後置處理結果 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
step_name/stepName 步驟名稱 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createAt 建立時間 String
createBy 建立人員 Long
createByName 建立人員名稱 String
updateAt 更新時間 String
updateBy 更新人員 Long
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

4 比對、產物與選單

4-1 qa.qa_r001:SQL 比對彙總

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
compare_num/compareNum 比對流水號 Long PK(映射) 模型必填;部署待核對 未取得;部署待核對 實體 PK 待核對
create_by/createBy 建立人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
create_at/createAt 建立時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_by/updateBy 更新人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_at/updateAt 更新時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
step_num/stepNum 步驟流水號 關聯qa_c013 Long 邏輯 FK → qa_c013.step_num 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
case_num/caseNum 案例流水號 關聯qa_c004 Long 邏輯 FK → qa_c004.case_num 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
run_num/runNum 執行run流水號 關聯qa_c008 Long 邏輯 FK → qa_c008.run_num 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
expect_table/expectTable 比對預期table String — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
result_table/resultTable 實際結果table String — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
compare_setting_json/compareSettingJson 比對設定快照 String;SQL ::json — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
compare_total_count/compareTotalCount 比對總筆數 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
compare_passed_count/comparePassedCount 比對通過筆數 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
compare_failed_count/compareFailedCount 比對失敗筆數 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

4-2 qa.qa_r002:SQL 比對欄位明細

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
compare_dtl_num/compareDtlNum 比對明細流水號 Long PK(映射) 模型必填;部署待核對 未取得;部署待核對 實體 PK 待核對
create_by/createBy 建立人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
create_at/createAt 建立時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_by/updateBy 更新人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_at/updateAt 更新時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
compare_num/compareNum 比對流水號 Long 邏輯 FK → qa_r001.compare_num 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
column_name/columnName 欄位名稱 String — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
expect_value/expectValue 期望值 String — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
result_value/resultValue 結果值 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
result_type/resultType 比對結果 1. 成功 2. 失敗 3. 不需比對 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
column_desc/columnDesc 比對欄位中文說明 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
column_type/columnType 欄位類型 1: 一般比對欄位 2: join 使用欄位 3: pk欄位 / String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
row_num/rowNum 第幾筆資料 Integer — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

4-3 qa.qa_u001:執行產物檔案

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
qa_file_num/qaFileNum 流水號 Long PK(映射) 模型必填;部署待核對 未取得;部署待核對 實體 PK 待核對
create_at/createAt 建立時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
create_by/createBy 建立人員 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_at/updateAt 異動日期 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_by/updateBy 異動人員 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
source_num/sourceNum 來源流水號 Long source_type=1 時對應 qa_c008.run_num 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
source_type/sourceType 來源類型;1 為測試執行,source_num 實際對應 run_num String — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對
file_name/fileName 檔案名稱 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
remote_file_path/remoteFilePath 遠端檔案路徑 String — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
current_upload_num/currentUploadNum 舊上傳流水號欄位(模型註記預定移除) Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

4-4 qa.qa_z000:方法呼叫類型選單

SQL 欄位/物件欄位 中文業務說明 現行映射型別 PK/FK Null Default Unique/Check/業務限制
class_name/className 類別名稱 String PK(映射) 模型必填;部署待核對 未取得;部署待核對 實體 PK 待核對
create_at/createAt 建立時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
create_by/createBy 建立人 Long — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
update_at/updateAt 更新時間 String;SQL ::timestamptz — 模型未標示;部署待核對 未取得;部署待核對 Unique/Check 未核對
class_use_type/classUseType 類別運用類型: 1. 型別 2. 調用bean class String — 模型必填;部署待核對 未取得;部署待核對 Unique/Check 未核對

基礎模型輔助欄位(未列入此表 SQL 基礎欄位;儲存限制均不適用):

物件欄位 中文說明 Java 型別
createByName 建立人員名稱 String
updateBy 更新人員 Long
updateByName 更新人員名稱 String
comId 公司編碼 String
comNum 公司流水號 Long

5 六種步驟 JSON

qa_c013.step_exec 保存定義,qa_c011.step_exec 保存當次執行所取得的設定。下列 stepExec 在 API 中是物件,在資料模型中可序列化成 JSON 字串;不要把它送成雙重編碼的字串。StepExecPo 基底本身沒有設定欄位。

本節的「檢核」指目前管理端對物件型 stepExec 的欄位檢查;不等於完整 JSON Schema 型別驗證。實際執行器可能另有使用前提。通用預設:參考型別未初始化時是 null、Java int 是 0;這些不是 API 承諾的業務預設值。

5-1 步驟外層物件

JSON 欄位 Java 型別 中文說明 現況檢核/限制
stepName String 步驟名稱 未見此欄專用必填檢查;依執行前提保存
stepNum Long 步驟定義流水號;既有步驟修改時保留 未見此欄專用必填檢查;依執行前提保存
caseNum Long 所屬案例流水號 未見此欄專用必填檢查;依執行前提保存
stepType String 決定 stepExec 子型別的代碼 未見此欄專用必填檢查;依執行前提保存
stepExec StepExecPo 該型別的執行設定物件 未見此欄專用必填檢查;依執行前提保存
stepOrder Integer 案例內步驟排序 未見此欄專用必填檢查;依執行前提保存
stepRemark String 步驟備註;新增路徑未完整支援 未見此欄專用必填檢查;依執行前提保存

5-2 1 HTTP:呼叫 API

JSON 欄位 Java 型別 中文說明 現況檢核/限制
qaSource String 測試資料來源代碼:main、log、dsb、fas 未見此欄專用必填檢查;依執行前提保存;空值或不認識的代碼會回退 main 測試資料來源
method String HTTP 方法 有傳入該物件時,欄位不可缺/不可空
url String 受測 API URL,可包含執行變數 有傳入該物件時,欄位不可缺/不可空
input HttpRequestPo HTTP 請求設定 執行器直接讀取 input 及 params/headers;無資料時也應提供空物件集合
output HttpResponsePo 模型保留的回應設定;目前 handler 未把它當作斷言來源 不是實際 Run 結果;不是本 handler 使用的斷言設定
postProcPos List<HttpPostProcPo> 後處理設定陣列 未見此欄專用必填檢查;依執行前提保存

5-3 2 SQL_COMPARE:比對資料表

JSON 欄位 Java 型別 中文說明 現況檢核/限制
qaSource String 測試資料來源代碼:main、log、dsb、fas 有傳入該物件時,欄位不可缺/不可空;空值或不認識的代碼會回退 main 測試資料來源
schema String 要比對的資料庫 schema 有傳入該物件時,欄位不可缺/不可空
table String 實際結果表名;預期表使用同名加 _qa 有傳入該物件時,欄位不可缺/不可空
columns List<String> 舊欄位清單;現行比對 handler 取 columnInfoList 未見此欄專用必填檢查;依執行前提保存
columnInfoList List<Column> 比對欄位名稱與說明清單 管理檢核未強制非空;執行器會直接讀取,須提供有效欄位
whereCond String 比對查詢的篩選條件 有傳入該物件時,欄位不可缺/不可空
joinMode String 配對方式:1 LEFT、2 RIGHT、3 FULL、其他 INNER 有傳入該物件時,欄位不可缺/不可空
joinOnCond String 預期與實際資料的 JOIN 條件 省略時取表 PK 欄位;若表無 PK 又未指定條件則失敗

5-4 3 PRE_SQL:執行 SQL

JSON 欄位 Java 型別 中文說明 現況檢核/限制
qaSource String 測試資料來源代碼:main、log、dsb、fas 有傳入該物件時,欄位不可缺/不可空;空值或不認識的代碼會回退 main 測試資料來源
sqlScript String 待執行 SQL 文字 有傳入該物件時,欄位不可缺/不可空
logEnabled String 是否記錄 SQL 結果;Y 才啟用 未見此欄專用必填檢查;依執行前提保存
resultToVarPos List<ResultToVarPo> SELECT 結果轉成執行變數的規則 未見此欄專用必填檢查;依執行前提保存

5-5 4 SQL_TRANSFER:匯入資料

JSON 欄位 Java 型別 中文說明 現況檢核/限制
qaSource String 測試資料來源代碼:main、log、dsb、fas 有傳入該物件時,欄位不可缺/不可空;空值或不認識的代碼會回退 main 測試資料來源
mode Integer 匯入模式:1 清空後匯入,2 追加匯入 1 會先清空目標;2 追加;不認識的模式不應提交
source String 來源資料表(schema.table);使用 _in 測試基準資料 有傳入該物件時,欄位不可缺/不可空
target String 目標資料表(schema.table) 有傳入該物件時,欄位不可缺/不可空

5-6 6 INVOKE:呼叫程式方法

JSON 欄位 Java 型別 中文說明 現況檢核/限制
qaSource String 測試資料來源代碼:main、log、dsb、fas 未見此欄專用必填檢查;依執行前提保存;空值或不認識的代碼會回退 main 測試資料來源
systemName String 受測系統代碼 有傳入該物件時,欄位不可缺/不可空
className String 欲呼叫的類別識別 有傳入該物件時,欄位不可缺/不可空
beanName String 欲呼叫的 Spring Bean 名稱 未見此欄專用必填檢查;依執行前提保存
methodName String 欲呼叫的方法名稱 有傳入該物件時,欄位不可缺/不可空
args List<InvokeArgPo> 帶型別的呼叫參數清單 未見此欄專用必填檢查;依執行前提保存
postProcPos List<InvokePostProcPo> 後處理設定陣列 未見此欄專用必填檢查;依執行前提保存

5-7 7 SQL_SELECT_COMPARE:比對兩段 SQL

JSON 欄位 Java 型別 中文說明 現況檢核/限制
qaSource String 測試資料來源代碼:main、log、dsb、fas 有傳入該物件時,欄位不可缺/不可空;空值或不認識的代碼會回退 main 測試資料來源
expectedSqlScript String 取得預期結果的 SQL 有傳入該物件時,欄位不可缺/不可空
resultSqlScript String 取得實際結果的 SQL 有傳入該物件時,欄位不可缺/不可空
columnInfoList List<Column> 比對欄位名稱與說明清單 管理檢核未強制非空;執行器會直接讀取,須提供有效欄位
whereCond String 比對查詢的篩選條件 未見此欄專用必填檢查;依執行前提保存
joinMode String 配對方式:1 LEFT、2 RIGHT、3 FULL、其他 INNER 有傳入該物件時,欄位不可缺/不可空
joinOnCond String 預期與實際資料的 JOIN 條件 有傳入該物件時,欄位不可缺/不可空

5-8 HTTP input

JSON 欄位 Java 型別 中文說明 現況檢核/限制
params Map<String, String> URL 查詢參數鍵值集合 未見此欄專用必填檢查;依執行前提保存
headers Map<String, String> HTTP Header 鍵值集合 未見此欄專用必填檢查;依執行前提保存
body String HTTP/型別化參數的內容 未見此欄專用必填檢查;依執行前提保存

5-9 HTTP output(保留模型)

JSON 欄位 Java 型別 中文說明 現況檢核/限制
status int 模型保留的 HTTP 狀態碼 未見此欄專用必填檢查;依執行前提保存
body Map<String, Object> 模型保留的回應 JSON 物件 未見此欄專用必填檢查;依執行前提保存
headers Map<String, String> HTTP Header 鍵值集合 未見此欄專用必填檢查;依執行前提保存

5-10 比對欄位項目

JSON 欄位 Java 型別 中文說明 現況檢核/限制
columnName String 比對欄位名稱 有傳入該物件時,欄位不可缺/不可空
columnDesc String 比對欄位中文說明 未見此欄專用必填檢查;依執行前提保存

5-11 SQL 結果轉變數項目

JSON 欄位 Java 型別 中文說明 現況檢核/限制
varKey String 要建立的變數名稱 有傳入該物件時,欄位不可缺/不可空
varScope int 變數範圍:1 GLOBAL、2 ENV、3 RUN、4 CASE 有傳入該物件時,欄位不可缺/不可空
jsonPath String 從 SQL 查詢結果提取值的 JSONPath 有傳入該物件時,欄位不可缺/不可空

5-12 INVOKE 參數項目

JSON 欄位 Java 型別 中文說明 現況檢核/限制
type String 型別識別字串 有傳入該物件時,欄位不可缺/不可空
body String 帶型別參數的序列化內容;支援執行變數與特定 SELECT 取值 有傳入該物件時,欄位不可缺/不可空

5-13 HTTP 後處理共通欄位

JSON 欄位 Java 型別 中文說明 現況檢核/限制
name String 後處理名稱 未見此欄專用必填檢查;依執行前提保存
targetObject String 1 HTTP 狀態碼斷言、2 JSON 斷言;3 等待停用 有傳入該物件時,欄位不可缺/不可空
order Integer 後處理順序欄位;執行器依收到的陣列順序處理 有傳入該物件時,欄位不可缺/不可空
enabled String 是否啟用;Y 才執行,其他值標示未啟用 有傳入該物件時,欄位不可缺/不可空

5-14 HTTP 狀態碼斷言:targetObject=1

另外繼承 HTTP 後處理共通欄位。

JSON 欄位 Java 型別 中文說明 現況檢核/限制
expected int 預期值 不可缺;0 表示非 4xx/5xx 即通過,不是 HTTP 0

5-15 HTTP JSON 斷言:targetObject=2

另外繼承 HTTP 後處理共通欄位。

JSON 欄位 Java 型別 中文說明 現況檢核/限制
expression String 以 $ 開頭的 JSONPath 不可空,且須以 $ 開頭
assertion String 斷言方式 管理檢核只接受 equals
expected String 預期值 有傳入該物件時,欄位不可缺/不可空

5-16 HTTP 等待舊模型:targetObject=3

另外繼承 HTTP 後處理共通欄位。

JSON 欄位 Java 型別 中文說明 現況檢核/限制
waitMs int 等待毫秒;僅保留舊模型,等待處理目前停用 模型存在,但執行 enum/處理分支停用;不列為可新增選項

5-17 INVOKE 後處理共通欄位

JSON 欄位 Java 型別 中文說明 現況檢核/限制
name String 後處理名稱 未見此欄專用必填檢查;依執行前提保存
targetObject String 1 回傳物件斷言、2 例外斷言;3 等待停用 有傳入該物件時,欄位不可缺/不可空
order Integer 後處理順序欄位;執行器依收到的陣列順序處理 有傳入該物件時,欄位不可缺/不可空
enabled String 是否啟用;Y 才執行,其他值標示未啟用 有傳入該物件時,欄位不可缺/不可空

5-18 INVOKE 回傳值斷言:targetObject=1

另外繼承 INVOKE 後處理共通欄位。

JSON 欄位 Java 型別 中文說明 現況檢核/限制
type String 型別識別字串 有傳入該物件時,欄位不可缺/不可空
body String 預期回傳物件的序列化內容 未見此欄專用必填檢查;依執行前提保存

5-19 INVOKE 例外斷言:targetObject=2

另外繼承 INVOKE 後處理共通欄位。

JSON 欄位 Java 型別 中文說明 現況檢核/限制
type String 預期例外類型 有傳入該物件時,欄位不可缺/不可空
assertion String 斷言方式 有傳入該物件時,欄位不可缺/不可空
message String 預期例外訊息 未見此欄專用必填檢查;依執行前提保存

5-20 INVOKE 等待舊模型:targetObject=3

另外繼承 INVOKE 後處理共通欄位。

JSON 欄位 Java 型別 中文說明 現況檢核/限制
waitMs int 等待毫秒;僅保留舊模型,等待處理目前停用 模型存在,但執行 enum/處理分支停用;不列為可新增選項

5-21 讀寫相容性

項目 現況 維護原則
步驟代碼 執行 enum 與 handler 支援 1、2、3、4、6、7 新增選單使用這六種;不得沿用舊註解將 2/3 交換
型別 5 備份設定模型還在,執行 enum 停用 舊資料應標示不支援,不提供新增
型別 7 執行端可轉換,CaseStep API 多型宣告未列入 7 讀寫 round-trip 需驗收,不能把 handler 存在當作維護 API 已驗證
未知欄位 執行型別 mapper 會忽略不認識的欄位 無法完整理解的設定保持唯讀,不能承諾原樣保存
HTTP output DTO 有欄位,handler 斷言看 postProcPos 編輯時保留既有值,實際結果另查 RunStep
步驟備註 修改路徑可保存,新增分支未完整支援 不將新增表單填寫成功當作已儲存成功
PRE_SQL 依 stepOrder 執行,並非自動在案例前執行 若用來準備後續步驟資料,明確排在前面
SQL_COMPARE/SQL_SELECT_COMPARE 以欄位配對後比對,無任何資料時回傳 error 空集合不可當成全部通過
變數優先度 CASE(4) > RUN(3) > ENV(2) > GLOBAL(1) 名稱相同時取較高優先度;不等於資料庫隔離

6 組合規則與模型差異

6-1 必須整組解讀的識別與約束

組合 現況語意 約束與驗證限制
(plan_num, case_num) 某案例被納入某計畫 case_plan_num 才是映射 PK;未證實組合 Unique,不可自行宣稱存在
(env_num, config_key) 同環境設定鍵 config_num 是映射 PK;需核對重複鍵處理及實體 Unique
(suite_num, case_order)/(case_num, step_order) 顯示與執行排序 未證實唯一約束;重複排序值的決定性須驗收
(run_num, run_suite_num, run_case_num, run_step_num) 執行結果的階層識別 由各層單欄流水號與邏輯關聯串起,不是四欄複合 PK
(runNum, caseNum) 查某案例的本次執行範圍 hooks 可在同一 Run 多次執行,不能設成結果唯一鍵
(source_type, source_num) 產物來源 現有檔案查詢只傳 source_num;跨來源類型混用前須確認碰撞風險
depends_on + 本次 Run 前置案例的成功條件 現況只檢查查得的 FAILED,且結果查詢未限定目前 Run/RunSuite;ERROR/未執行不等同已被阻擋

6-2 歷史建表與現行模型

差異 正確解讀
舊 Case 註解的 after hook 代碼及每類只能一筆 現行 enum 為 4 AFTER_EACH、5 AFTER_ALL;執行以清單處理,不沿用舊註解作唯一限制
早期 Case 有 case_steps,現行映射沒有 現行 Step 定義在 qa_c013;不能依舊 DDL 把步驟再塞回 Case 欄位
舊 step_type、case_type、狀態為 int,現行 Java 多為 String API 按目前字串代碼;DB 實體型別須另查,不能直接用 Java 型別重建 DB
舊 RunStep 的 run_case_num 宣告為 bigserial 目前寫入會帶入已建立的 RunCase ID;不能利用該舊預設另造不相干的 RunCase ID
現行新增 category、suite_status、case_throwable、post_proc_resp 等 這些欄位不在早期完整建表區段;目前部署定義待核對
舊規格末尾七組 FK 宣告位於延後處理區段 只有宣告證據,沒有套用證明;不能聲稱現場已具物理 FK
suite_record/case_record/step_exec 分別在執行時取得;不是一次原子固定全部定義

6-3 強制關閉後的資料解讀

夜間固定強制關閉不等同 Run 已寫入完成或中斷終態。以下沿用現有欄位,不新增未實作的 shutdown/snapshot 欄位。

既有欄位 隔日追查用途 解讀限制
run_num、trigger_num、plan_num、env_num 找出前一夜哪次測試、計畫與環境 必須能在關閉後持久讀取,不能只留在執行器記憶體
run_status、run_start_time、run_end_time 判斷最後收到的狀態與起訖時間 run_status=2 或結束時間空白可能是強制關閉前未回寫;不能自動當通過
run_suite_num、run_case_num、run_step_num 定位最後執行的群組、案例與步驟 未建立的結果可能沒有資料列,不以缺筆表示成功
step_error、step_result、post_proc_resp、run_log 查錯誤、實際回應與執行線索 持續寫入;不能等正常完成才一次保存,也不能假設每欄都已填值
qa_u001.source_num/source_type、file_name、remote_file_path 對回本次 Run 的已產生檔案 路徑及 metadata 不保證檔案內容已離開短生命週期儲存

日誌、結果與產物在強制關閉後仍可查,是目標驗收條件;實際資料庫持久性、外部日誌與產物儲存部署尚未驗證。早上對照最後回報與關閉事件後整理未完成 Run,保存中斷及修正線索;重跑另建 Run,不覆蓋舊結果。完整保存要求見 03 資料模型與儲存。

7 View 與驗證邊界

本範圍未找到平台專用持久 View 的定義。案例樹、執行報表與統計由 JOIN、聚合及物件轉換產生,不能替它們捏造 View 名稱或儲存約束。

查詢/投影 來源與推導 儲存限制
Plan 的 selectedCaseNums 由計畫案例集合中的 caseNum 衍生 API 投影,非 DB 欄位,PK/FK/default/Check 不適用
Case 的 caseSteps qa_c013.case_num 對應 Case,按 step_order 取得 API 集合,非 Case 表 JSON 欄位
單次 Run 通過率 已載入 NORMAL RunCase 的 PASSED 數/一般案例數,先將比例四捨五入兩位再乘 100 計算值,零案例現況回傳 100;不是完整驗收通過證明
SQL 比對 JSON 檔 當次 SQL 比對 handler 將步驟結果加入 SqlCompareReport_<runNum>.json 檔案產物,非資料庫 View;同名檔案讀取後覆寫的並發行為待驗證

資料字典已覆蓋本範圍映射與 JSON 模型;實際資料庫型別/Null/default/約束、既有案例內容、歷史資料與 round-trip 仍須在測試環境驗證。唯讀 catalog 查詢見 03 資料模型與儲存。