本文是「測試之外的那一半:一個 QA 回頭帶當年的自己」系列第 26 篇。
實習的時候我填測試報表。每一列後面兩個選項:pass、fail。
我填了很久,從來沒問過那兩格夠不夠。
我自己寫文章講問題驅動測試,講要對每件事多問一句,然後對自己每天在填的那個欄位,一次都沒問過。直到有人當著我的面問起,我才開始想。
AI 幫你跑完 200 個測試案例,交回一張結果表。
170 筆清清楚楚,綠的綠、紅的紅。
剩下 30 筆是某種「不綠、也不紅」。
那 30 筆逼出一個問題:當跑測試的人從我變成 AI,pass 和 fail 這兩個欄位,還夠不夠。
第一個直覺是給它們第三格,叫 skipped 或待測。
但打開來一筆一筆看,會發現它們至少是四種不同的東西:
四種動機、四種後續處理,在 dashboard 上長得一模一樣。
假設你把那一格嚴格定義成「應該要測,但沒有測」。它裡面還有兩種完全不同的東西:
應測但測不到。 案例跟不上改動了,或者工具就是做不到。這是外部限制,值得被看見、值得補資源。
應測但不想測。 這次價值不夠、步驟太麻煩、要改環境、要跨部門喬。這是內部選擇。
假設有一筆的理由欄寫著「資料量太少不重要」。這可能是真的不值得測,也可能是測起來太麻煩,用「不重要」包裝掉了。
欄位本身分不出這兩種。
而這件事有個更麻煩的性質:當一個欄位有承載主觀選擇的空間,它就會被那樣使用。 schema 不是中性的記錄工具,它會影響填的人願不願意誠實。
再加幾格也只是延後爆炸。
因為「我對這個結果有多確定」跟「這個案例過了沒」,本來就是兩件正交的事。一個過了的案例,可能是紮實驗過的,也可能是只跑了 happy path 就綠了。
把它們塞進同一欄,等於要求一個維度承載兩個維度的資訊。
該做的是把它拆成兩欄:結果,加上信心,再加一欄理由。
我一開始以為這是 AI 帶來的新問題。
不是。
我實習的時候填 pass,背後也有很多種不一樣的 pass。我紮實驗過的 pass,跟我點一下沒報錯就填的 pass,在報表上長得一模一樣。
Day 12 那個查無資料的腳本回報的也是 pass,而它根本沒有判斷。
AI 沒有創造這個問題,它只是讓它現形。因為以前那個「有多確定」存在填表的人腦子裡,需要的時候問一下就好。現在填表的是機器,你問不到,它也不會主動說。
Day 9 那句「我測了什麼、沒測什麼、為什麼沒測」講的是同一件事。差別只在於,當時我可以口頭補,現在補不了了。
下次填測試結果的時候,在那一格旁邊多寫一行:
我對這個結果有多確定?為什麼?
一開始你可能會覺得多餘。但填幾次之後你會發現,有些 pass 你寫不出理由。
那些寫不出理由的 pass,就是你真正該回去看的地方。
明天聊:AI 跟我說 OK 的時候,那句 OK 值多少。