Touchstone: DeepSeek Harness 代理驅動的自動化測試平臺

前言

DeepSeek Harness (DSH) 的核心設計理念是“一切皆插件”,它允許通過擴展來定義智能體的行爲。在實際的 AI 測試開發中,往往需要管理長期的智能體會話、維護測試用例庫以及追蹤 Bug。DSH 本身提供的是原子化的執行能力,而如何編排多輪次的探索、迴歸與修復流程,是很多開發者面臨的挑戰。

Touchstone 是一個專爲 DeepSeek Harness 設計的插件。它將 DSH 從單次命令行工具轉變爲一個長期運行的自動化測試工作流平臺。該插件旨在提供結構化的測試用例管理、Bug 報告生成、以及可視化的開發板視圖,幫助開發者在本地環境中完成從探索代碼到修復驗證的完整閉環。

核心功能

Touchstone 提供了一套完整的測試生命週期管理機制,主要包含以下能力:

  • Markdown 案例庫:測試用例以 Markdown 格式存儲,支持人類閱讀和編輯。每個案例包含案例文件和狀態文件,目錄索引 (INDEX.md) 便於導航。
  • Bug 報告作爲一等公民:測試失敗會被結構化爲 Bug 報告(包含嚴重性、復現步驟、日誌證據等),並直接存入 bug_report/ 目錄,可與後續的修復或用例修訂任務關聯。
  • 統一的項目級串行隊列:同一項目下,任務、看板卡片和消息共享同一個串行槽位,確保同一時間只有一個智能體會話對代碼倉庫進行操作,避免衝突。
  • 開發板:提供 Kanban 視圖,展示任務狀態、隊列位置和會話信息。卡片可以在獨立的 git worktree 中運行,保證探索性工作不影響主代碼檢出。
  • 六種任務類型:覆蓋完整的 QA 循環,包括探索、迴歸、壓力、修復、重測和用例修訂。
  • 內置壓力測試:支持生成負載場景和驅動腳本,由平臺自動執行多輪壓測,並輸出 Markdown 或 JSON 報告。
  • 飛書/即飛通知:支持通過飛書卡片接收推送通知,並可雙向回覆。
  • 語義搜索:基於 RAG(檢索增強生成)技術,對案例庫進行語義檢索。

前置條件

在啓用 Touchstone 之前,需要滿足以下環境要求:

  • Node.js:22.19.0 或 24.0.0 及以上版本。這是 DSH 主機和插件模式後端(默認)的最低要求。
  • Python:3.12.0 及以上版本。用於獨立模式 (./touchstone.sh start) 或插件模式下的 Python 後端。
  • DeepSeek Harness:已安裝並運行。

安裝與啓用

Touchstone 的安裝流程建議參考其官方 GitHub 倉庫。由於具體安裝命令在已覈實事實中未提供,請通過以下鏈接獲取最新安裝說明:

https://github.com/gavinc-cn/touchstone-dsh

安裝完成後,在 DSH 的配置中加載該插件即可使用。插件支持兩種後端模式:默認的 Node.js 後端和 Python 後端(作爲回退選項)。

典型用法

Touchstone 的工作流通常分爲以下幾個步驟:

  1. 註冊項目:
    在 Touchstone 中定義一個項目,需要指定源碼目錄、工作目錄(存放案例和報告)、環境標籤以及指導智能體遵循的規則。

  2. 創建任務:
    指定任務類型(例如“探索”或“迴歸”)和結束階段(例如“報告”)。系統會將任務加入對應項目的串行隊列。

  3. 執行 Rounds:
    智能體會以常駐會話的形式運行。每一輪 (Round) 都會基於上下文執行任務,直到達到結束階段或滿足停止條件。日誌會實時輸出。

  4. 管理工件:
    執行完成後,新的測試用例會保存在工作目錄的 free_style/ 下,Bug 報告保存在 bug_report/ 下。這些文件是可讀寫的 Markdown 文件,可以直接用於代碼審查或後續修復。

  5. 後續任務:
    一個 Bug 報告可以觸發“修復”任務,修復任務完成代碼變更後可觸發“重測”任務,或者將失敗的用例標記爲“用例修訂”。

注意事項

  • 本地運行:Touchstone 在本地運行,使用 SQLite 數據庫和文件系統作爲存儲。除非 DSH 主機主動發起模型調用,否則數據不會離開本地機器。
  • 非一次性 CLI:它不是用於一次性執行測試套件的命令行工具,而是設計用於管理多輪智能體交互的持久化平臺。
  • 權限與安全:插件以當前 DSH 進程的權限運行,請確保在安裝前檢查源碼與許可證。
  • 環境依賴:如果使用默認的 Node.js 後端,必須確保 Node.js 版本滿足 22.19+ 或 24+ 的要求。

總結

Touchstone 爲 DeepSeek Harness 提供了一套完整的測試工作流管理能力。它通過結構化的案例庫、可視化的開發板和統一的隊列機制,解決了 AI 測試中上下文管理、狀態追蹤和協作的難題。對於希望在本地構建自動化測試閉環的開發者來說,這是一個實用的插件選擇。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜