把測試做成產品:AI 時代的業務測試可視化實踐指南

作者:木樂樂的異想世界
日期:2026年5月10日 上午6:58
來源:WeChat 原文

整理版優先睇

速讀 5 個重點 高亮

用低成本前端將測試變成業務用戶的協作工具,核心是按能力分層、每個頁面只回答一個明確問題。

整理版摘要

呢篇文章係作者分享點樣用AI寫前端代碼嘅低成本優勢,將測試從開發專屬嘅腳本變成業務同事都用得嘅可視化產品。作者做緊智能審核系統,成日遇到業務同事睇唔明測試結果,要等開發解釋,溝通成本好高。佢發現傳統測試門檻高、結果難理解、協作困難,尤其係智能系統鏈路太長,出錯時根本唔知邊層有問題。

作者嘅結論係:測試可視化唔係取代單元測試,而係幫大家「睇得明」系統點解咁判斷。佢提出按能力分層設計測試頁面:業務審核能力、底層公共能力、抽取實驗室,每層只答一個問題。每個頁面要講清測試對象、輸入提示、配置同源(唔好前端寫死)、運行過程反饋,仲要產品化管理測試數據,保存歷史記錄支持復跑。

最後佢建議落地順序:先畫系統鏈路,找出最難解釋嘅環節,整最小頁面,逐步升級。唔好一開始就做大而全嘅控制枱,而係先做一個高頻痛點頁面,例如上傳文件、選節點規則、睇結果存歷史,已經可以解決好多問題。

  • 測試可視化嘅核心目標係讓業務用戶睇得明、能夠協作,而唔係取代單元測試。
  • 按能力分三層:業務審核(最貼近業務)、底層公共能力(文件分類、OCR等)、抽取實驗室(新文檔試抽、調優)。
  • 頁面設計必須包含測試對象(用業務語言)、輸入提示(自動顯示要上傳嘅文件角色)、配置同源(連真實配置)、運行反饋(顯示進度,避免用戶以為卡死)。
  • 推薦問題定位鏈路完整結果異常 → 業務節點測試 → 規則級測試 → 文件分類測試 → OCR測試 → 抽取實驗室,逐層聚焦。
  • 測試數據要產品化管理,保存原始文件、manifest.json,支持復跑和審計;落地時先做一個高頻痛點頁面,逐步迭代,唔好追求大而全。
整理重點

點解要將測試做成產品

傳統代碼式測試門檻高,業務用戶唔會跑腳本,結果失敗後只見到異常棧同JSON,佢哋真正關心嘅係「邊條規則冇過?要補咩文件?」。而且智能審核鏈路太長,例如文件上傳、OCR、抽取、規則判斷等,任何一層出事都會令最終結果異常,但好難即刻知邊層錯。

測試可視化就係要幫業務用戶睇得明結果、快速復現問題,唔使等開發解釋。

作者認為,AI寫前端代碼成本夠低,以前「唔值得整頁面」嘅內部工具而家可以做好。測試唔一定要留喺腳本入面,可以設計成產品畀成個團隊用。

整理重點

按能力分層,唔好堆入口

作者冇將所有測試塞入一個頁面,而係按能力層級拆開,每個入口只回答一個明確問題。

  1. 1 業務審核能力測試:使用者揀節點同規則,上傳所需文件,結果顯示通過、失敗、跳過,仲有風險依據同證據。
  2. 2 底層公共能力測試:例如文件分類測試頁面,答文件有冇被正確歸類;OCR清洗測試確認文字提取結果。
  3. 3 抽取實驗室:唔綁定審核規則,例如泛化抽取實驗室,用嚟試抽同調優,適合開發同能力驗證。

每個頁面只答一個問題,避免做成「大雜燴」令人唔知點入手。

整理重點

一個好嘅測試可視化頁面要有啲咩

測試頁面唔可以淨係「上傳文件 + 睇 JSON」,咁樣業務同事一樣用唔起。作者提出至少要有四樣嘢。

測試對象要用業務語言,唔好淨係畀 `check_subject_seal` 呢類技術字段。

  • 測試對象:清楚顯示而家測緊咩場景、節點、規則,用業務語言描述。
  • 輸入提示:自動提示要上傳嘅文件角色,例如「主體與蓋章校驗」要上傳報銷面單同合同,避免用戶卡喺第一步。
  • 配置同源:節點、規則、文件角色要從配置中心動態拎,唔好前端寫死,否則配置改咗測試頁面唔同步,會造成混亂。
  • 運行過程反饋:顯示已耗時、當前步驟(OCR、解析、節點執行等),避免用戶以為系統卡死。

輸入提示係作者感受最深嘅一點:用戶好多時唔係唔識測,而係唔知要上傳邊啲文件。

整理重點

問題定位鏈路同數據管理

測試頁面要服務於問題定位。作者推薦一條清晰鏈路:完整審核結果異常 → 業務節點測試(邊個節點失敗) → 規則級測試 → 文件分類測試 → OCR測試 → 抽取實驗室。每一步只答一個問題。

另外,測試數據要產品化管理。作者做法係每次測試保存原始文件同 manifest.json,紀錄文件名、sha256、場景、節點規則等。咁樣可以復跑、審計、沉澱標準樣例。注意刪除功能要謹慎,第一版最好只允許刪除單一文件,避免誤刪測試資產。

測試歷史記錄係必須嘅,冇歷史就冇復現能力,協作效率會好低。

整理重點

常見誤區同落地建議

作者列出幾個常見誤區:只做頁面但唔接真實配置、只展示 Raw JSON、只有完整流程測試、冇歷史記錄、運行中冇反饋。呢啲都會令測試工具淪為擺設。

落地順序建議:先畫系統鏈路,找出最常出問題嘅環節,整最小測試頁面,每個頁面只答一個核心問題

  1. 1 畫出系統能力鏈路。
  2. 2 揾出最難解釋嘅環節。
  3. 3 為呢啲環節整最小測試頁面。
  4. 4 輸入區盡量貼近真實業務。
  5. 5 輸出區先畀業務結論,再畀技術細節。
  6. 6 節點、規則必須同配置中心同源。
  7. 7 每次測試保存歷史,支持復跑。
  8. 8 逐步從節點級升級到規則級,再沉澱成迴歸測試集。

作者最後總結:測試頁面本身都係產品。AI令前端開發成本下降,好多內部工具值得重新設計。當業務用戶都可以理解、復現、討論時,測試就變成團隊協作嘅一部分,而唔係淨係開發嘅工程工具。

過去好長一段時間入面,大家預設「測試」主要係開發嘅事。

單元測試、接口測試、腳本測試、命令行調試,呢啲嘢對開發好順手。

但係去到業務同事、測試同事、規則配置同事嗰度,就冇咁友好喇。

尤其係智能審核、文檔抽取、OCR、規則判斷呢類系統,一個結果失敗咗,大家第一反應通常唔係「我知邊度錯咗」,而係「呢個到底係邊一層嘅問題」。

如果答案都藏喺代碼、日誌同 JSON 入面,業務用戶只能等開發解釋。

測試呢件事,就好難變成大家一齊用嘅工具。

而家呢個前提變咗。

AI 寫前端代碼已經夠平、夠快。


以前好多「唔值得專門做頁面」嘅測試工具,而家可以用好低成本整成可視化頁面。

測試唔一定只可以留喺腳本入面,佢都可以被設計成一個產品。

呢篇文章唔講通用測試理論,主要紀錄我在呢個項目入面行過嘅一條路:


點樣將測試變成業務用戶睇得明、操作到、可以重現嘅可視化工具。

Image

【重點】一、點解要將測試做成產品

代碼式測試梗係有價值,但佢有幾個天然限制。

第一,門檻高。業務用戶唔會行腳本,亦唔應該被要求睇得明測試代碼。

第二,結果難理解。測試失敗之後,開發見到嘅係異常棧、日誌、字段差異;業務用戶真正關心嘅係:邊條規則唔過?依據係咩?我要唔要補文件?補邊個文件?

第三,協作成本高。如果測試結果唔可以被業務、測試、開發共同理解,大家唯有不停截圖、轉述、解釋。好多時間花喺「你講緊係咪呢個問題」上面。

第四,智能系統嘅問題鏈太長。以智能審核為例,一次審核結果可能經過:

文件上傳
  ↓
文件分類
  ↓
OCR / T1 預解析
  ↓
文檔結構化抽取
  ↓
審核節點執行
  ↓
規則判斷
  ↓
風險彙總
  ↓
審核報告生成

任何一層出問題,最終結果都會異常。

所以我後來更傾向於做一組測試入口,而唔係一個「大而全」嘅測試腳本。

每個入口只幫用戶回答一個問題:呢一層到底係唔係正常。

Image

【重點】二、測試可視化唔係取代單元測試

先講清楚:測試可視化唔係用嚟取代代碼測試嘅。

單元測試、接口測試、回歸測試、CI 仍然要做。佢哋負責守住工程底線。

可視化測試解決嘅係另一類問題:

  • 等業務用戶睇得明測試結果
  • 等測試人員可以快速重現問題
  • 等規則配置人員可以驗證規則變化
  • 開發更快定位問題發生喺邊一層
  • 等同一組測試文件、同一段測試記錄可以反覆討論

可以咁樣理解:

代碼測試:保證系統不會壞
可視化測試:幫助大家看懂系統為什麼這樣判斷

前者偏工程保障,後者偏協作同解釋。兩者最好都要有,唔好溝埋一齊互相取代。

【重點】三、測試頁面要按能力分層,而唔係堆入口

係呢個項目入面,我冇將所有測試都塞入一個頁面。咁樣做睇落慳事,最後一定會變成一個邊個都唔想打開嘅「大雜燴」。

我更願意按能力層級拆開。

→ 1. 業務審核能力測試

呢一類測試最接近業務用戶嘅理解方式,亦係最容易令業務同事參與嘅入口。

佢關心嘅係:

  • 邊個審核節點喺度運作
  • 邊條規則被測試
  • 需要上傳邊啲業務文件
  • 節點結果係通過、失敗、跳過定係異常
  • 風險依據係咩
  • 通過證據係咩

例如「業務節點測試」頁面入面,用戶可以選擇:

Image

頁面會提示呢條規則需要嘅文件,例如報銷面單、合同。用戶上傳文件之後,只行呢個節點,然後睇對應風險、證據、日誌同原始 JSON。

呢類頁面嘅重點好樸素:等業務規則可以被單獨拎出嚟驗證。

→ 2. 底層公共能力測試

業務節點失敗,唔一定係規則錯咗。有時只係底層能力冇做好。

所以需要單獨測試底層公共能力,例如:

  • 文件分類測試
  • 頁面分型診斷
  • T1 OCR 清洗測試
  • 合同抽取子圖測試

佢哋回答嘅係更底層嘅問題:

  • 文件有冇被辨識成正確角色
  • 邊個文件被當成合同,邊個文件被當成結算書
  • PDF 每一頁係咪分型正確
  • OCR 係咪提取到關鍵文字
  • 合同字段係咪可以單獨抽取成功

呢類頁面主要畀開發同測試用,但做得清楚嘅話,業務同事都睇得明一部分。

佢嘅價值好直接:業務節點結果唔啱嘅時候,唔使即刻估規則錯咗,可以先落去查多一層。

Image

→ 3. 抽取實驗室

抽取實驗室更偏開發同能力調優,我將佢當成「試驗田」。

佢適合用嚟做:

  • 新文檔類型試抽
  • 抽取模板調試
  • prompt 迭代
  • 字段結構驗證
  • 標準答案對比
Image

例如「泛化抽取實驗室」同「單頁提取測試」唔綁定某一條審核規則,佢哋服務抽取能力本身。

呢一層適合探索。行通之後,再沉到正式審核流程入面。

【重點】四、一個好嘅測試可視化頁面應該包含啲咩

測試頁面唔可以只係「上傳文件 + 睇 JSON」。咁做只係將命令行搬咗去網頁,業務同事都係用唔到。

如果希望業務用戶都用得,我覺得至少要把下面幾件事講清楚。

→ 1. 測試對象

用戶一定要知道自己而家係測緊啲咩。

例如:

場景:營銷費用審核
審核節點:主體與蓋章校驗
測試規則:確認報銷供應商與合同供應商一致

唔好淨係畀用戶睇 `check_subject_seal` 呢啲技術字段。技術字段可以留低,但頁面主信息應該係業務語言。

→ 2. 輸入提示

呢度係我自己感受最強嘅一點:用戶成日唔係唔識測,而係唔知要上傳邊啲文件。

所以頁面需要根據配置中心自動提示:

  • 呢條規則涉及邊啲文件角色
  • 每個文件角色係咩意思
  • 文件缺失可能會導致咩結果

例如揀「主體與蓋章校驗」下面嘅某條規則之後,頁面提示:報銷面單、合同

Image

揀另一條規則時,提示可能變成:結算書/交付報告

Image


呢步如果唔做,頁面再靚都冇用。用戶會卡喺第一步:我到底要傳咩?

→ 3. 配置同源

測試頁面上嘅節點、規則、文件角色、參數,唔應該係前端寫死嘅。

否則配置中心改咗規則,測試頁面仲顯示舊內容,就會造成新嘅混亂。

我更認同嘅做法係:

配置中心 audit_config.xlsx
  ↓
後端配置接口 /config/audit-rules
  ↓
測試頁面動態展示節點、規則、文件角色、參數

Image

咁樣測試頁面就會成為正式規則配置嘅一個可視化入口,而唔係另一套要人手維護嘅說明文案。

→ 4. 運行過程反饋

智能審核成日行得比較耐。涉及 OCR、PDF 解析、大模型抽取時,用戶唔可以淨係見到一個「正在測試」。

頁面應該展示:

  • 已經用咗幾耐
  • 而家大約喺邊一步
  • 係咪正在保存文件
  • 係咪正在 OCR
  • 係咪正在執行節點
  • 係咪正在等後端返回
Image

就算第一版仲未做到真正實時日誌,都應該先畀用戶一個運行中進展面板。

否則用戶會以為系統卡咗。⠀

【重點】五、推薦嘅問題定位鏈路

測試頁面點樣組織,最後要服務於問題定位。

Image

我而家覺得比較順嘅一條鏈路係:

完整審核結果異常
  ↓
業務節點測試:哪個節點失敗
  ↓
規則級測試:是哪條規則失敗
  ↓
文件分類測試:文件角色是否識別正確
  ↓
T1 OCR / 頁面分型:底層解析是否正確
  ↓
抽取實驗室:字段抽取是否需要調優

咁樣用戶唔會迷失喺一堆工具入面,亦唔會一嚟就被逼睇最底層嘅技術細節。

每個頁面回答一個明確問題就夠:

  • 業務節點測試:呢個節點係唔係正常?
  • 規則級測試:呢條規則點解過或唔過?
  • 文件分類測試:文件有冇辨識啱?
  • OCR 測試:文字有冇提取出嚟?
  • 抽取實驗室:字段有冇抽啱?

【重點】、測試數據都要產品化管理

可視化測試唔係淨係做頁面,仲要管理測試數據。

尤其係業務文件類測試,上傳嘅文件本身就係測試樣例。呢一點好容易被低估。

呢個項目入面嘅做法係:

audit-agent/uploads/capability_cases/{record_id}/
  files/
    原始上傳文件
  manifest.json

每次測試都會保存:

  • 原始文件名
  • 儲存路徑
  • 文件大小
  • sha256
  • 測試場景
  • 節點
  • 規則
  • 係咪用咗 T1 緩存

咁樣做有幾個實際好處:

  • 可以重跑
  • 可以審計
  • 可以排查文件係咪有變
  • 可以沉澱標準測試樣例
  • 可以將來擴展成回歸測試集

需要注意嘅係,長期保存文件之後,刪除能力都要謹慎設計。唔好一嚟就提供批量刪除目錄。第一版最好淨係允許刪除明確嘅單個文件,避免誤刪測試資產。

Image

【重點】、測試可視化嘅常見誤區

→ 誤區一:淨係做頁面,唔接真實配置

頁面睇落好靚,但規則、節點、文件說明都係前端寫死嘅。

呢類頁面好快會同真實系統脱節。到最後,大家又要問:到底以配置中心為準,定係以測試頁面為準?

→ 誤區二:淨係展示 Raw JSON

Raw JSON 對開發有用,但對業務用戶唔友好。

應該先展示業務結論,再將 JSON 留畀開發排查。

→ 誤區三:淨係得完整流程測試

完整流程測試梗係重要,但定位問題太慢。

需要支援:

  • 單節點測試
  • 單規則聚焦測試
  • 底層能力測試
  • 抽取實驗測試

→ 誤區四:冇歷史紀錄

冇歷史紀錄,就冇重現能力。

測試結果只能靠截圖傳播,協作效率會好低。

→ 誤區五:運行中冇反饋

智能審核好容易行幾十秒甚至幾分鐘。

如果頁面得一個 loading,用戶好易懷疑係統卡咗。呢個體驗好差,仲會製造好多無謂嘅溝通。

【重點】九、點樣喺其他項目落地

如果其他項目都想做,可以唔使一開始就做得好完整。我建議按呢個順序嚟:

  1. undefined. 先畫出系統能力鏈路
  2. undefined. 揾出最常出問題、最難解釋嘅環節
  3. undefined. 為呢啲環節做最小測試頁面
  4. undefined. 每個頁面只回答一個核心問題
  5. undefined. 輸入區盡量貼近真實業務使用方式
  6. undefined. 輸出區先畀業務結論,再畀技術細節
  7. undefined. 節點、規則、參數、文件角色一定要同配置中心同源
  8. undefined. 每次測試一定要保存歷史
  9. undefined. 支援基於歷史重跑
  10. undefined. 逐步由節點級測試升級到規則級測試
  11. undefined. 再進一步沉澱成回歸測試集

唔好一開始就追求大而全。測試可視化最怕做成「萬能控制枱」,睇落咩都有,其實邊個都唔知由邊度開始。

先做一個高頻痛點頁面,例如:

上傳一組文件
選擇一個節點
選擇一條規則
運行測試
查看結果和證據
保存歷史

咁就已經可以解決唔少問題。

【重點】十、結語:測試頁面都係產品

AI 令前端開發成本下降之後,好多內部工具都值得重新設計。

以前我哋可能會覺得,為測試做頁面唔划算。

而家唔同咗。好多測試頁面唔需要做到正式產品咁複雜,但可以做得夠清楚、夠好用。

當測試頁面夠平,測試就唔使淨係停留喺代碼入面。佢可以變成業務、測試、開發共同使用嘅協作界面。

尤其係喺智能審核呢類系統入面,可視化測試好實用。

冇咗佢,好多問題會一直停留喺「我覺得唔啱」同「你再 send 多次文件畀我」嘅來回溝通入面。

如果淨係留一句話,我會咁講:

當測試結果得開發睇得明嘅時候,測試只係工程工具;

當業務用戶都可以理解、重現、討論嘅時候,測試先開始變成團隊協作嘅一部分。

過去很長一段時間裏,大家默認“測試”主要是開發的事情。

單元測試、接口測試、腳本測試、命令行調試,這些東西對開發很順手。

但換到業務同事、測試同事、規則配置同事那裏,就沒那麼友好了。

尤其是智能審核、文檔抽取、OCR、規則判斷這類系統,一個結果失敗了,大家第一反應往往不是“我知道哪裏錯了”,而是“這到底是哪一層的問題”。

如果答案都藏在代碼、日誌和 JSON 裏,業務用戶只能等開發解釋。

測試這件事,也就很難變成大家一起用的工具。

現在這個前提變了。

AI 寫前端代碼已經足夠便宜、足夠快。


以前很多“不值得專門做頁面”的測試工具,現在可以用很低的成本做成可視化頁面。

測試不一定只能留在腳本里,它也可以被設計成一個產品。

這篇文章不講通用測試理論,主要記錄我在這個項目裏走過的一條路:


怎麼把測試做成業務用戶能看懂、能操作、能復現的可視化工具。

Image

【重點】一、為什麼要把測試做成產品

代碼式測試當然有價值,但它有幾個天然限制。

第一,門檻高。業務用戶不會跑腳本,也不應該被要求看懂測試代碼。

第二,結果難理解。測試失敗以後,開發看到的是異常棧、日誌、字段差異;業務用戶真正關心的是:哪條規則沒過?依據是什麼?我要不要補文件?補哪個文件?

第三,協作成本高。如果測試結果不能被業務、測試、開發共同理解,大家只能反覆截圖、轉述、解釋。很多時間花在“你說的是不是這個問題”上。

第四,智能系統的問題鏈路太長。以智能審核為例,一次審核結果可能經過:

文件上傳
  ↓
文件分類
  ↓
OCR / T1 預解析
  ↓
文檔結構化抽取
  ↓
審核節點執行
  ↓
規則判斷
  ↓
風險彙總
  ↓
審核報告生成

任何一層出問題,最終結果都會異常。

所以我後來更傾向於做一組測試入口,而不是一個“大而全”的測試腳本。

每個入口只幫用戶回答一個問題:這一層到底是不是正常。

Image

【重點】二、測試可視化不是替代單元測試

先說清楚:測試可視化不是用來替代代碼測試的。

單元測試、接口測試、迴歸測試、CI 仍然要做。它們負責守住工程底線。

可視化測試解決的是另一類問題:

  • 讓業務用戶看得懂測試結果
  • 讓測試人員能快速復現問題
  • 讓規則配置人員能驗證規則變化
  • 開發更快定位問題發生在哪一層
  • 讓同一組測試文件、同一次測試記錄可以反覆討論

可以這樣理解:

代碼測試:保證系統不會壞
可視化測試:幫助大家看懂系統為什麼這樣判斷

前者偏工程保障,後者偏協作和解釋。兩者最好都要有,不要混在一起互相替代。

【重點】三、測試頁面要按能力分層,而不是堆入口

在這個項目裏,我沒有把所有測試都塞進一個頁面。這樣做看起來省事,最後一定會變成一個誰都不想打開的“大雜燴”。

我更願意按能力層級拆開。

→ 1. 業務審核能力測試

這一類測試最接近業務用戶的理解方式,也是最容易讓業務同事參與進來的入口。

它關心的是:

  • 哪個審核節點在工作
  • 哪條規則被測試
  • 需要上傳哪些業務文件
  • 節點結果是通過、失敗、跳過還是異常
  • 風險依據是什麼
  • 通過證據是什麼

例如“業務節點測試”頁面裏,用戶可以選擇:

Image

頁面會提示這條規則需要的文件,例如報銷面單、合同。用戶上傳文件後,只跑這個節點,然後看對應風險、證據、日誌和原始 JSON。

這類頁面的重點很樸素:讓業務規則可以被單獨拿出來驗證。

→ 2. 底層公共能力測試

業務節點失敗,不一定是規則錯了。有時只是底層能力沒做好。

所以需要單獨測試底層公共能力,例如:

  • 文件分類測試
  • 頁面分型診斷
  • T1 OCR 清洗測試
  • 合同抽取子圖測試

它們回答的是更底層的問題:

  • 文件有沒有被識別成正確角色
  • 哪個文件被當成合同,哪個文件被當成結算書
  • PDF 每一頁是否分型正確
  • OCR 是否提取到了關鍵文字
  • 合同字段是否能單獨抽取成功

這類頁面主要給開發和測試用,但做得清楚一點,業務同事也能看懂一部分。

它的價值很直接:業務節點結果不對時,不用馬上猜規則錯了,可以先往下查一層。

Image

→ 3. 抽取實驗室

抽取實驗室更偏開發和能力調優,我把它看成“試驗田”。

它適合用來做:

  • 新文檔類型試抽
  • 抽取模板調試
  • prompt 迭代
  • 字段結構驗證
  • 標準答案對比
Image

比如“泛化抽取實驗室”和“單頁提取測試”不綁定某一條審核規則,它們服務抽取能力本身。

這一層適合探索。跑通以後,再沉到正式審核流程裏。

【重點】四、一個好的測試可視化頁面應該包含什麼

測試頁面不能只是“上傳文件 + 看 JSON”。那只是把命令行搬到了網頁上,業務同事還是用不起來。

如果希望業務用戶也能用,我覺得至少要把下面幾件事講清楚。

→ 1. 測試對象

用戶必須知道自己現在在測什麼。

例如:

場景:營銷費用審核
審核節點:主體與蓋章校驗
測試規則:確認報銷供應商與合同供應商一致

不要只給用戶看 `check_subject_seal` 這種技術字段。技術字段可以留着,但頁面主信息應該是業務語言。

→ 2. 輸入提示

這裏是我自己感受最強的一點:用戶經常不是不會測,而是不知道該上傳哪些文件。

所以頁面需要根據配置中心自動提示:

  • 這條規則涉及哪些文件角色
  • 每個文件角色是什麼意思
  • 文件缺失可能導致什麼結果

例如選擇“主體與蓋章校驗”下的某條規則後,頁面提示:報銷面單、合同

Image

選擇另一條規則時,提示可能變成:結算書/交付報告

Image


這一步如果不做,頁面再漂亮也沒用。用戶會卡在第一步:我到底要傳什麼?

→ 3. 配置同源

測試頁面上的節點、規則、文件角色、參數,不應該在前端硬編碼一份。

否則配置中心改了規則,測試頁面還顯示舊內容,就會造成新的混亂。

我更認可的做法是:

配置中心 audit_config.xlsx
  ↓
後端配置接口 /config/audit-rules
  ↓
測試頁面動態展示節點、規則、文件角色、參數

Image

這樣測試頁面會成為正式規則配置的一個可視化入口,而不是另一套需要人工維護的說明文案。

→ 4. 運行過程反饋

智能審核經常跑得比較久。涉及 OCR、PDF 解析、大模型抽取時,用戶不能只看到一個“正在測試”。

頁面應該展示:

  • 已耗時多久
  • 當前大概在哪一步
  • 是否正在保存文件
  • 是否正在 OCR
  • 是否正在執行節點
  • 是否正在等待後端返回
Image

哪怕第一版還做不到真正實時日誌,也應該先給用戶一個運行中進展面板。

否則用戶會以為系統卡死。⠀

【重點】五、推薦的問題定位鏈路

測試頁面怎麼組織,最後要服務於問題定位。

Image

我現在覺得比較順的一條鏈路是:

完整審核結果異常
  ↓
業務節點測試:哪個節點失敗
  ↓
規則級測試:是哪條規則失敗
  ↓
文件分類測試:文件角色是否識別正確
  ↓
T1 OCR / 頁面分型:底層解析是否正確
  ↓
抽取實驗室:字段抽取是否需要調優

這樣用戶不會迷失在一堆工具裏,也不會一上來就被迫看最底層的技術細節。

每個頁面回答一個明確問題就夠了:

  • 業務節點測試:這個節點是否正常?
  • 規則級測試:這條規則為什麼過或不過?
  • 文件分類測試:文件有沒有識別對?
  • OCR 測試:文字有沒有提出來?
  • 抽取實驗室:字段有沒有抽對?

【重點】、測試數據也要產品化管理

可視化測試不是隻做頁面,還要管理測試數據。

尤其是業務文件類測試,上傳的文件本身就是測試樣例。這個點很容易被低估。

這個項目裏的做法是:

audit-agent/uploads/capability_cases/{record_id}/
  files/
    原始上傳文件
  manifest.json

每次測試都會保存:

  • 原始文件名
  • 存儲路徑
  • 文件大小
  • sha256
  • 測試場景
  • 節點
  • 規則
  • 是否使用 T1 緩存

這樣做有幾個實際好處:

  • 可以復跑
  • 可以審計
  • 可以排查文件是否變化
  • 可以沉澱標準測試樣例
  • 可以未來擴展成迴歸測試集

需要注意的是,長期保存文件以後,刪除能力也要謹慎設計。不要一上來就提供批量刪除目錄。第一版最好只允許刪除明確的單個文件,避免誤刪測試資產。

Image

【重點】、測試可視化的常見誤區

→ 誤區一:只做頁面,不接真實配置

頁面看起來很漂亮,但規則、節點、文件說明都是前端寫死的。

這類頁面很快會和真實系統脱節。到最後,大家又要問:到底以配置中心為準,還是以測試頁面為準?

→ 誤區二:只展示 Raw JSON

Raw JSON 對開發有用,但對業務用戶不友好。

應該先展示業務結論,再把 JSON 留給開發排查。

→ 誤區三:只有完整流程測試

完整流程測試當然重要,但定位問題太慢。

需要支持:

  • 單節點測試
  • 單規則聚焦測試
  • 底層能力測試
  • 抽取實驗測試

→ 誤區四:沒有歷史記錄

沒有歷史記錄,就沒有復現能力。

測試結果只能靠截圖傳播,協作效率會很低。

→ 誤區五:運行中沒有反饋

智能審核很容易跑幾十秒甚至幾分鐘。

如果頁面只有一個 loading,用戶很容易懷疑係統卡住。這個體驗很糟,而且會製造很多不必要的溝通。

【重點】九、如何在其他項目落地

如果其他項目也想做,可以不用一開始就做得很完整。我建議按這個順序來:

  1. undefined. 先畫出系統能力鏈路
  2. undefined. 找出最常出問題、最難解釋的環節
  3. undefined. 為這些環節做最小測試頁面
  4. undefined. 每個頁面只回答一個核心問題
  5. undefined. 輸入區儘量貼近真實業務使用方式
  6. undefined. 輸出區先給業務結論,再給技術細節
  7. undefined. 節點、規則、參數、文件角色必須和配置中心同源
  8. undefined. 每次測試必須保存歷史
  9. undefined. 支持基於歷史復跑
  10. undefined. 逐步從節點級測試升級到規則級測試
  11. undefined. 再進一步沉澱成迴歸測試集

不要一開始就追求大而全。測試可視化最怕做成“萬能控制枱”,看起來什麼都有,其實誰都不知道從哪裏開始。

先做一個高頻痛點頁面,比如:

上傳一組文件
選擇一個節點
選擇一條規則
運行測試
查看結果和證據
保存歷史

這就已經能解決不少問題了。

【重點】十、結語:測試頁面也是產品

AI 讓前端開發成本下降以後,很多內部工具都值得重新設計。

過去我們可能會覺得,為測試做頁面不划算。

現在不一樣了。很多測試頁面不需要做成正式產品那樣複雜,但可以做得足夠清楚、足夠好用。

當測試頁面足夠便宜,測試就不必只停留在代碼裏。它可以變成業務、測試、開發共同使用的協作界面。

尤其是在智能審核這類系統裏,可視化測試很實用。

沒有它,很多問題會一直停留在“我覺得不對”和“你再發我一份文件”的來回溝通裏。

如果只留一句話,我會這麼說:

當測試結果只有開發能看懂時,測試只是工程工具;

當業務用戶也能理解、復現、討論時,測試才開始變成團隊協作的一部分。