跳轉至
繁體中文 English

排除問題

先找你看到的症狀

先從畫面或命令輸出開始。報告應該說清楚跑了什麼、發生什麼,以及為什麼得到目前的 結果。只有一個 FAIL 或 INCOMPLETE,還不足以診斷交付。

你看到的情況 從這裡開始
toppleCatCheck 不接受 Java 方法 驗收方法無法編譯
規格或案例找不到對應方法 規則沒有公開綁定
公開案例和實作結果不一致 公開驗收失敗
某道檢查顯示無法評估 證據不完整
審閱者案例或 mutation 證據不見了 獨立檢查沒有證據
契約與封印不一致 契約完整性失敗

驗收方法無法編譯

這代表 ToppleCat 還無法把選定規則整理成可信的可執行契約。先讀第一個 Check 錯誤訊息; 它通常會指出是哪個方法、參數、Stage 或 Scenario 呼叫不符合格式。

ToppleCase 放第一個,後面是一個 ToppleScenario,再接不同的具體 Stage。Stage 不能是 final,並且要有可存取的無參數 constructor。準備工作、條件判斷、服務呼叫與 assertions 都放進 Stage 方法。

修正後重新執行 ./gradlew toppleCatCheck。檢查命令還不能描述完整契約前,不要封存 或正式驗證。

規則沒有公開綁定

選定規格或案例列使用的 AC ID,找不到可編譯的公開 @ToppleAcceptanceTest 方法。 請修正 ID,或補上缺少的方法。審閱者控制的案例只能檢查既有規則,不能建立一條實作 AI 從未看過的新規則。

公開驗收失敗

在 Verification Report 打開失敗的公開案例。先看輸入,再看預期結果與實際結果; 這會指出哪一筆人寫的例子和實作不一致。

實作錯了就修正式程式。若人寫的規則或預期結果有誤,才修改契約。任何預期中的 契約變更都要重新檢查、審閱與封存。

這次 Mutation Testing 會因為沒有通過的公開 baseline 而不完整。審閱者案例和 Properties 是獨立檢查,仍可能留下有用的當次結果。

證據不完整

INCOMPLETE 表示 ToppleCat 沒有足夠的當次可信證據,不能支持通過或失敗。可能是 工作被中斷、當次附帶資料遺失,或性質檢查事件與封存宣告對不上。

先讀該檢查旁邊的原因,修正後重新執行正式驗證。舊輸出可以協助追查歷史,但不能 補進新的執行。

獨立檢查沒有證據

如果政策啟用了審閱者案例,每條選定規則都需要一筆實際執行的審閱者案例。補上案例、 重新審閱完整契約,再次封存。若團隊確定不使用這道檢查,應明確修改政策並重新封存; 不能拿別的檢查代替。

Mutation Testing 沒有可用結果時,先確認 Public Acceptance 是否通過,再讀 managed 外部工具的原因。ToppleCat 使用固定的 PIT 設定與當次報告;專案自己的 PIT 工作 或舊報告不能取代。

契約完整性失敗

公開驗收內容、Gradle logic、semantic definition 或 verification policy 已經和 Mechanical Seal 不一致。若變更是預期的,先還原審閱者資料,執行檢查與審閱,再重新 封存完整契約;若不是預期變更,就復原契約。

正式驗證不會自行建立缺少的封印,也不會默默批准新的契約內容。

安全的下一步

訊息仍然看不懂時,可以把公開 error、本頁 Markdown 與相關公開程式交給 AI,請它說明 實際跑了什麼,並提出公開範圍內的修正。不要把私人 Verification Report 或審閱者控制 的值交給它。

審閱者應先讀白話原因,有需要再展開技術證據。無法解釋的狀態本身 就是報告問題,不要靠猜測理解 FAIL 或 INCOMPLETE。