前言¶
在 DeepSeek Harness (DSH) 的生態中,”一切皆插件” 是核心設計理念。對於使用智能體進行應用測試的開發者來說,如何讓 Agent 真正理解業務流程並留下可追溯的測試證據,是一個典型痛點。zseven-w/dsh-qa 插件正是爲此設計,它作爲 DSH 的 QA 協調器插件,解決了”如何讓 Agent 探索真實應用並轉化爲可復現測試場景”的問題。
這是什麼¶
zseven-w/dsh-qa 是一個 QA 協調器插件,旨在讓 Agent 以真實用戶的方式探索應用,並在探索過程中捕獲證據,最終將驗證過的操作轉化爲確定性的回放場景。
- 維護者: ZSeven-W
- 類別: 工作流
- 許可證: MIT
- 核心價值: Explore real apps, capture evidence, and turn verified actions into repeatable QA scenarios.
核心功能¶
該插件提供了一套從觀察到回放的工作流能力:
- 探索模式: Agent 驅動應用,像真實用戶一樣操作,並基於證據輸出發現結果。
- 回放模式: 將探索到的路徑導出爲聲明式的
QaScenario文件(JSON),以確定性方式執行,並生成報告。 - 多驅動支持: 支持 Browser、macOS desktop、iOS 和 Android 四種平臺。
- 證據導向: 基於證據的斷言,支持無損 JSON 導出。
安裝與啓用¶
本插件基於 Node.js 運行,且依賴多個獨立驅動包。
環境要求¶
- Node.js 24.11.0 或更高版本
安裝步驟¶
- 安裝核心插件:
npm install @zseven-w/dsh-qa # the orchestrator
- 安裝 DeepSeek Harness:
npm install -g @deepseek-ai/dsh@latest
驅動安裝¶
安裝 @zseven-w/dsh-qa 本身不包含任何驅動。若要使用特定平臺的能力,必須單獨安裝對應的驅動包:
npm install @zseven-w/dsh-browser # 瀏覽器會話
npm install @zseven-w/dsh-computer # macOS 桌面會話
npm install @zseven-w/dsh-ios # iOS 設備/模擬器會話
npm install @zseven-w/dsh-android # Android 設備/模擬器會話
啓用插件¶
- 注意: 僅安裝 DSH 並不會自動激活此插件。需要在配置中指定其入口(如
cordis.patch.yml或.mcp.json),並確保在啓動會話前已加載該插件。 - 登錄狀態注入: 若需注入登錄態,必須獲得所有者(owner)的明確授權。
典型用法¶
工作流¶
按照標準流程執行:觀察 -> 行動 -> 斷言 -> 證據 -> 導出。
驗證安裝¶
運行官方提供的瀏覽器示例腳本來驗證安裝是否成功(需要 dsh-qa 和 dsh-browser):
node node_modules/@zseven-w/dsh-qa/scripts/run-example.mjs
成功的安裝會輸出 [example] status: pass。
適用場景與注意¶
適用場景¶
- 需要自動化 QA 工作流的智能體開發。
- 需要基於真實應用操作生成可復現測試腳本的場景。
- 跨平臺(Web、桌面、移動端)的自動化測試需求。
關鍵注意事項¶
- 無虛假通過: 對於未知的操作回執,系統需要新鮮的證據。運行結果爲
pass、inconclusive或fail,未覆蓋不代表失敗。 - 無權限升級: 安全字段和
EXTERNAL_COMMIT_TARGET被拒絕。移動會話必須提供明確的設備 ID,不允許回退到默認設備。 - 回放需要持久目標: 臨時引用和模糊選擇器不會被導出爲持久場景。
- 視覺是輔助: 視覺斷言僅用於排查,不決定運行狀態。
- 移動端支持有條件:
- iOS: 文本輸入需要實時的原生元素綁定原語和標識符。
- Android:
type需要驗證真實焦點;fill不可用。
- 證據安全: 結構化報告使用 fail-closed 紅頭,但截圖可能包含隱私內容。請使用合成測試數據。
- macOS 計算機輔助: 必須由用戶自行構建(需要 Accessibility + 屏幕錄製權限),插件不提供現成的可分發構建版本。
結語¶
zseven-w/dsh-qa 爲 DeepSeek Harness 提供了一套嚴謹的 QA 能力,通過 Agent 驅動的探索和確定性回放,連接了真實應用與自動化測試場景。對於需要構建高質量智能體測試體系的開發者,這是一個值得納入工具鏈的插件。