前言:不等新功能當藉口,主動補一個例外測試 第二部看過 commit 80d3469「順路補測試」的真實案例——加新功能時,順便把舊路徑的測試缺口補上。今天反過...
前言:把 check-style 接進 CI,會先踩到什麼坑? 「一個 composer script 早就寫好了,接進 CI 不就是加一行 yaml 嗎?」...
前言:把覆蓋率的開關打開,要花多少功夫? 「覆蓋率工具要裝、要設定門檻、CI 要改,聽起來是一個大工程吧?」 前幾天看到 phpunit.xml 裡明明有完整的...
前言:把第三部的發現串起來看一次全貌 第三部花了 7 天挖這個套件的跨版本相容性跟靜態品質工具現況。今天把它們串起來看一次全貌。 今日目標 回顧第三部 7 天...
前言:AI 寫的程式碼,會不會用了 CI 不支援的新語法? 如果現在請 AI 幫 omnipay-ecpay 加一個新功能,AI 很有可能會很自然地寫出 mat...
前言:一個從沒被呼叫過的 composer script composer.json 裡有一個叫 check-style 的 script,執行 phpcs 檢...
前言:實際跑一次 PHPStan,會冒出什麼? 昨天講完「這個套件沒有靜態分析工具」,今天實際動手裝一次,看看真的跑起來會冒出什麼。先說清楚:以下是我在一份本機...
前言:這個套件有在用靜態分析工具嗎? 「這個套件寫得算工整,應該有在用靜態分析工具吧?」 沒有。翻遍整個專案,找不到 phpstan.neon、psalm.xm...
前言:徽章還在,但它指的東西早就換了 Day 04 講過 README 的功能說明沒跟上程式碼——那是「這個套件能做什麼」的文件漂移。今天要看另一種完全不同面向...
前言:跨版本相容,是刻意做出來的嗎? 「支援 PHP 7.1 到 8.3,程式碼裡是不是寫了一堆 if (version_compare(...)) 這種版本分...
前言:CI 測過的範圍,等於正式承諾的範圍嗎? 「CI 矩陣測過 PHP 7.1 到 8.3,代表這個套件正式支援這個範圍吧?」 打開 composer.jso...
前言:制度跟自覺,哪個更靠得住? 第二部用一筆真實的 commit,帶出了一連串觀察。今天把它們收在一起,回答一開始留下的問題:制度跟自覺,哪個更靠得住? 今日...
前言:把「順便檢查」寫成能照著做的 prompt Day 11 講了心態:AI 不會自動「順路」注意到測試缺口,除非你明確要求。今天把這件事變成真的能照著做的方...
前言:沒有覆蓋率門檻,缺口靠什麼被補上? 前面幾天看到的「順路補測試」,是在一個完全沒有覆蓋率門檻的套件裡發生的——phpunit.xml 雖然設定了覆蓋率報表...
前言:AI 會不會主動幫你補被冷落的測試? 「如果請 AI 幫我在 PurchaseRequest 加一個新的付款方式,AI 會不會像 Day 09 講的那樣,...
前言:順路補測試,總得先有人打開那個檔案 昨天說「順路補測試」是一種真實存在的償債機制,但它有個前提:得先有人因為別的理由打開那個檔案。今天看這個套件裡兩個一直...
前言:先寫測試再寫功能,才算有紀律? 「TDD 教的不是應該先寫測試、再寫功能嗎?昨天那筆 commit 看起來完全不是這樣,這樣算不算沒紀律?」 先說結論:昨...
前言:commit message 講的,跟程式碼改的,是同一件事嗎? 「commit message 寫的是加了什麼功能,那測試就一定是為了驗證那個功能新寫的...
前言:覆蓋率報表設定好了,為什麼還要關掉? 「既然都設定好覆蓋率報表了,為什麼 CI 上還要特地加一個參數把它關掉?」 這是這個套件最反直覺的地方:phpuni...
前言:不用 Mockery,這個套件怎麼辦? 「測試裡要模擬外部 API 呼叫,不就是 Mockery::mock() 一行解決的事嗎?」 omnipay-ec...
前言:「有寫測試」跟「測得夠不夠」是兩回事 「有寫測試」跟「測得夠不夠」是兩回事。今天把 omnipay-ecpay 全部 21 個測試方法攤開來數一遍,看清楚...
前言:README 寫得爛,去看程式碼不就好了? 「README 寫得爛,去看程式碼註解或原始碼不就好了?」 這句話沒錯,但代價是:新使用者要多花一段時間,自己...
前言:官方 SDK 都出了,為什麼還要包一層 「廠商都出官方 SDK 了,為什麼還要多包一層 Omnipay 驅動套件,不是直接用官方 SDK 比較快?」 這是...
前言:付款方式一多,欄位要怎麼組 「同一個 PurchaseRequest,要同時支援信用卡、ATM、超商代碼、無卡分期、電子發票,這麼多種欄位組合,是不是要寫...
前言:AI 能補程式碼,但補不出你沒發現的缺口 「現在 AI 這麼厲害,寫測試不是應該叫 AI 順手補一補就好了嗎?」 如果你也這樣想過,這個系列想用一個真實存...