iT邦幫忙

2026 iThome 鐵人賽

DAY 24
0
Vibe Coding

四個番茄鐘,三次重新來過:我跟 AI 的 30 天開發考古系列 第 24 篇

Day 24|AI 說測試都通過,但兩個月後我才知道哪些真的有用

  • 分享至 

  • xImage
  •  

Pomofocus 最後一批功能做完的那天是 8 月 10 日。交接文件裡,好幾節的結尾都有類似這樣的句子:

開機自動啟動的登錄機碼寫入、以及提醒文字的實機顯示效果未實機驗證,建議下次開機實測。

收工按鈕的實際點擊手感、evening → 睡眠 → 隔天喚醒後系統匣是否確實存活未實機驗證,建議下次真的用它收工一次觀察。

實機未驗:選單實際切換後跨階段的手感。

AI 沒有假裝測試通過就等於功能可用,而是誠實地畫出邊界。

一、開機自動啟動:有用,而且真的在跑

這個功能是寫一條登錄機碼到 HKCU\Software\Microsoft\Windows\CurrentVersion\Run,用 OS.execute("reg", [...]) 執行。

實機結果:我有打開這個設定,開機的時候它會自己跑起來。

這是這批功能裡唯一一個「照原本設計運作、而且我真的在用」的。

二、收工按鈕:做出來了,我沒在用

這個功能的來由是這樣:我的習慣是每天用「關閉程式」觸發疲勞評分,評完讓電腦睡眠,隔天再手動開機。而睡眠喚醒不是開機,不會觸發 Run 機碼,所以開機自啟幫不上忙。

當時的決議是:與其在 Windows 層面想辦法讓睡眠喚醒後自動重啟,不如把「評分」和「真的結束程式」分開——加一顆「收工」按鈕,評完分縮到系統匣,程式繼續在背景跑。

聽起來很合理。實作也很乾淨:把原本的退出流程抽成共用函式,加一個 end_day(),沒有系統匣支援時自動退回原本的退出行為。測試全過。

然後我一次都沒用過。

因為我的習慣還是「關掉程式」。那顆收工按鈕就躺在設定頁裡,我每天照樣按關閉。

至於「睡眠喚醒後系統匣圖示還在嗎」這個問題——答案是還在,但原因不是收工按鈕有效,是我根本沒關掉程式的那些日子它就一直開著。

三、自動開始:我設成「自動番茄」

8 月 10 日那天把單一的「自動開始下一段」拆成四種模式:不自動、自動休息、自動番茄、兩者都自動。

我最後選的是自動番茄——休息結束自動開始下一顆番茄,但工作時間到不會自動進休息,會先進入逾時狀態、貓咪出來提醒。

這個選擇剛好對應我最原始的痛點。
Day 2 講過第一版失敗的原因之一是「休息完忘記按開始,於是一路坐下去」。自動番茄正好解掉這件事。

而反過來的自動休息我沒開,因為我想保留「自己決定什麼時候停」的那一刻。

四、最小化:AI 說好了,實際沒有

這是唯一一個「說 PASS 但我實際用起來不對」的。

我按最小化,工作列上還是會看到 exe 的圖示。

這其實文件裡就寫了,是 Godot 的引擎限制:

⚠️ 已知限制:Godot 不允許隱藏主視窗,「縮匣/迷你」時主視窗改用最小化(工作列仍留圖示,引擎限制)

所以嚴格說不是 bug,是已知限制。
但我期待的是「縮到系統匣就該從工作列消失」,而測試只驗證了「視窗形態切換正確」,沒有人去驗證「使用者的期待有沒有被滿足」。

這件事在第二版的我寫了 685 行 C++(Day 11)解決這個問題,但第四版我選擇接受它。
雖然他的確是個困擾,但它從來沒有真的妨礙我休息。

這四件事的共同點

「測試通過」和「功能有用」之間,隔著一段只有時間能填的距離。

  • 開機自啟:測試沒驗到,實際有用
  • 收工按鈕:測試全過,我沒在用
  • 自動開始:測試驗了邏輯,但哪個模式適合我只有用了才知道
  • 最小化:測試通過、限制已知、期待落空

寫給正在用 AI 開發的人:可以在待辦清單裡新增一欄叫「還沒被生活驗證」。
AI 可以幫我們把功能做出來、可以幫我們寫測試、可以告訴我們哪些沒驗到,但它沒辦法幫我們真正使用兩個月,並了解是否有達到我們的目標。

帶走這個:「還沒被生活驗證」清單

測試通過之後,功能其實只完成一半。另一半要等時間。所以待辦清單多了一欄:

功能 怎樣算真的成立 什麼時候會知道
開機自動啟動 重開機後它自己跑起來 下次重開機
收工鈕 我真的用它收工,而不是照舊按關閉 一週後回頭看
自動開始模式 我選定其中一種並且沒再改 兩週後

第三欄是關鍵。寫下「什麼時候會知道」,這件事才會真的被回頭檢查,否則它就永遠停在「已完成」的狀態裡。

而最值得記住的是「收工按鈕」——它設計沒有錯,邏輯乾淨、測試全過,但它假設了一件沒被驗證的事:我會改變自己的習慣。
**功能可以被測試驗證,習慣不行。**下次遇到「這個功能需要使用者改變行為才成立」的情況,先問自己願不願意改,再決定要不要做。

明天講這份文件裡另一種紀錄:那些寫著「還沒修」「不在這次範圍」的段落,以及為什麼我覺得把債寫下來比還債更重要。


上一篇
Day 23|headless 測試全過,但它根本看不到畫面
下一篇
Day 25|我學會把「還沒修」寫進文件
系列文
四個番茄鐘,三次重新來過:我跟 AI 的 30 天開發考古 共 25 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言