自動化測試產生

單元測試、整合測試、E2E 測試 —— 把程式碼丟給 OpenClaw,測試用例自動產生

寫測試這件事,誰不頭疼?

測試永遠排在最後面

功能趕著上線,測試永遠是「下個版本再補」。結果上線一炸,才發現邊界情況根本沒涵蓋。

寫 mock 寫到懷疑人生,一個介面依賴三個服務,光 mock 資料就寫了半個小時,比業務程式碼還多。

涵蓋率報告一看 30%,老闆問起來只能嘴硬說「核心邏輯都測了」。實際上連 happy path 都沒測全。

OpenClaw 怎麼幫你搞定測試

讀懂你的程式碼,產生靠譜的測試

OpenClaw 不是隨便產生幾個 test case 糊弄你。它會分析函數簽名、分支邏輯、異常處理路徑,自動識別邊界條件和異常場景。

你的函數有 null 檢查?它會產生 null 輸入的測試。有迴圈?它會測空陣列、單元素、大量資料。有 try-catch?它會構造能觸發異常的輸入。

而且它理解你專案用的測試框架 —— Jest、Pytest、JUnit、Vitest,產生的程式碼直接能跑,不用你手動改格式。

拿去就能用的測試 Prompt

三條 Prompt 覆蓋單元測試、E2E 測試、壓力測試。按你的需要選。

單元測試全涵蓋 黃金指令
分析這個模組的所有匯出函數和類別方法。

為每個函數產生完整的單元測試,要求:
1. 涵蓋率目標 90% 以上(陳述式涵蓋 + 分支涵蓋)
2. 每個函數至少測試:正常輸入、邊界值、異常輸入
3. 對外部相依使用 mock,不要依賴真實的資料庫或網路
4. 測試命名清晰,用 「should xxx when xxx」 格式
5. 加上必要的 setup/teardown

用這個專案現有的測試框架和斷言庫,保持風格一致。
這條是最常用的。丟一個檔案進去,幾秒鐘測試就出來了。涵蓋率 90% 不是吹的,它會把你想不到的邊界 case 都加上。
E2E 登入流程測試(Playwright) 進階技巧
用 Playwright 為以下登入流程編寫 E2E 測試:

測試場景:
1. 正常登入:輸入正確的使用者名稱密碼,驗證跳轉到首頁
2. 錯誤密碼:輸入錯誤密碼,驗證顯示錯誤提示
3. 空表單提交:不輸入任何內容點提交,驗證表單校驗
4. 記住密碼:勾選 「記住我」,關閉後重新打開驗證登入狀態
5. 登出:登入後點擊退出,驗證跳回登入頁

要求:
- 用 Page Object Model 模式組織程式碼
- 添加合理的等待策略,不要用 sleep
- 截圖失敗場景用於除錯
Playwright 的 E2E 測試寫起來很繁瑣,特別是等待策略和選擇器。讓 AI 寫初版,你再按實際頁面微調,效率翻倍。
API 壓力測試腳本 進階技巧
為以下 API 介面產生壓力測試腳本(使用 k6 或 Artillery):

測試設定:
1. 漸進加壓:從 10 並發開始,每 30 秒增加 10,最高 200 並發
2. 持續時間:總共 5 分鐘
3. 請求分布:70% 讀操作,20% 寫操作,10% 更新操作
4. 記錄指標:P50/P95/P99 延遲、錯誤率、吞吐量

產生結果分析腳本,輸出性能瓶頸報告。
如果 P99 > 500ms 或錯誤率 > 1%,標記為需要優化。
壓力測試腳本自己從頭寫要半天。這條 Prompt 直接給你生產級的設定,連結果分析腳本都包了。

測試產生:OpenClaw vs Copilot

都能產生測試,但產生質量差別挺大的。

OpenClaw
  • 分析完整的函數邏輯和分支路徑,邊界 case 涵蓋全
  • 理解跨檔案的相依關係,mock 產生準確
  • 支持指定涵蓋率目標,不達標會補充用例
  • 產生 E2E、壓力測試等複雜場景的完整腳本
VS
Copilot
  • 基於當前檔案產生,容易遺漏跨檔案相依
  • 主要產生 happy path 測試,邊界涵蓋不夠
  • mock 經常需要手動修正
  • 複雜測試場景(E2E、壓力測試)支持有限

真實場景:緊急上線前補測試

週五下午四點,老闆說今晚必須上線
新功能開發了兩週,測試涵蓋率只有 20%。QA 說至少要 70% 才敢放行。你還有三個小時。
OpenClaw
把核心模組丟給 OpenClaw,一個 Prompt 產生完整測試套件。它會自動分析哪些分支沒涵蓋,補上邊界測試和異常處理。三個小時拿下 80% 涵蓋率,QA 愉快簽字。
手寫測試
開始瘋狂寫 test,但光理清楚相依關係就花了一個小時。mock 寫錯了三次,測試跑不通。最後涵蓋率勉強到 45%,QA 不讓過,加班到凌晨。

幾個實用技巧

💡 產生測試後先跑一遍,確認能通過。如果有失敗的用例,把錯誤資訊貼給 OpenClaw,它會幫你修復。
🎯 與其一次性產生所有測試,不如按模組分批產生。每次聚焦一個檔案,測試質量更高。
測試產生用 Claude Opus 4.6 效果最好,特別是涉及複雜業務邏輯的時候。簡單的工具函數測試用 DeepSeek V3.2 就夠了,省錢。
這篇案例對你有幫助嗎?