個人開發應用程式測試可以留給人工智慧嗎?用節拍器驗證結果
將使用節拍器開發的範例來展示個人開發應用程式測試可以在多大程度上委託給人工智慧。我們將總結109項自動測試的通過、螢幕轉換缺陷的發現、96個BPM錄音的分析以及最終的人工確認範圍。

如果您自己開發應用程序,那麼很難找到足夠的時間進行測試。這是因為實施、檢查操作、記錄結果、調查缺陷需要一個人。
由於節拍器應用的開發中使用了AI,我評估在個人開發的情況下,AI可以成為測試的主要責任。
他們不僅能夠發現人類錯過的缺陷,而且還能夠透過計算和記錄分析來確認節奏的準確性。然而,規格和結果的最終確認以及發布的決定是由人類做出的。
留給AI的範圍和人類確認的範圍
在本次開發中,我們分以下幾個階段進行了測試:
| 測試階段 | 建構使用 |
|---|---|
| 本地的 | 開發建置 |
| 內部測試 | 驗證建置 |
| 近距離測試 | 生產建構 |
在本文中,「使用AI進行測試」不僅包括使用AI進行終端機操作,還包括使用自動化測試和分析處理進行驗證。並非一切都僅透過AI螢幕操作或視覺判斷來確認。
我們把大部分任務留給了人工智慧,例如確定測試視角、創建Excel格式的規範、操作終端、確定通過/失敗、截圖、確認缺陷再現。
基本流程如下。
- AI 識別測試視角並以 Excel 格式建立測試規範
- 經過人工智慧審查後,人類確認了規範的最終版本
- AI在驗證設備上執行測試並記錄結果和截圖
- 比較測試結果和證據,經過人工智慧審核後,由人類最終確認
作為證據,請使用測試執行期間在驗證裝置上拍攝的螢幕截圖。影像不會由 AI 產生或處理。
這些圖紙由人類在人工智慧的幫助下進行檢查。 AI負責執行,人類負責檢查規格、結果、外觀等重要點。
發現別人忽略的缺陷
AI 發現的錯誤之一是如果執行特定操作,則可能會切換到本應被丟棄的螢幕。
我不會透露具體的操作或螢幕配置,但這是一種不一致,可以讓你回到你不應該到達的螢幕。據我們確認,對使用者沒有實際傷害,但我們確定螢幕狀態管理有問題,需要修復。
這個問題在人體測試中被忽略了。
AI甚至指定了重現它的步驟。我們根據內容進行修改,用AI重新測試,然後由人工進行最終確認。
在過去的測試中,我們還發現並修復了按鈕顯示 10 到 12 節拍時會斷線的問題,以及通知會覆蓋輸入/確認操作的 UI 問題。
當你自己實現一個功能時,你傾向於透過專注於預期的操作來檢查它。基於這個結果,我覺得AI不僅可以幫我完成工作,還可以承擔起撿起我自己檢查時漏掉的問題的作用。
透過計算和記錄驗證節奏準確性
節拍器的核心是它能夠以設定的速度準確地標記節奏。因此,我們檢查了計算出的發聲位置和聲音之間的實際間隔。
檢查內部時鐘計算
對於產生聲音的內部時鐘,我們使用與實現不同的計算方法計算了聲音的預期位置,並對結果進行了比較。這是因為同樣的計算錯誤不會延續到預期值。
過去的內部時鐘測試已驗證以下條件:
| 驗證目標 | 條件 |
|---|---|
| 節奏和分區數量的組合 | 30、31、96、137、299、300 BPM x 分區數 1 至 4。相當於每個 10 分鐘 |
| 長計算 | 137 BPM 十六分音符相當於 30 分鐘 |
在這個範圍內,我們確認了與預期探測位置的誤差在一個樣本之內,並且預期探測位置沒有重疊。
“相當於10分鐘”和“相當於30分鐘”是計算驗證範圍。這並不是使用持續發出相同時間聲音的實際設備進行測量的結果。
錄製並檢查揚聲器發出的聲音
除了內部計算之外,我們還使用麥克風以 96 BPM 錄製並分析了大約 1 分鐘的實際揚聲器聲音。
我們從錄音前後的部分檢測到了 88 個節拍,並獲得了以下結果。
| 專案 | 測量結果 |
|---|---|
| 設定節拍數 | 96 BPM |
| 預計 BPM | 95.998 BPM |
| 平均節拍間隔 | 625.011毫秒(理論值625毫秒) |
| 節拍間隔的標準差 | 約1.32毫秒 |
| 節拍間隔範圍 | 622〜628 ms |
在我們的條件下,我們能夠確認平均節奏約為 96 BPM。 在分析的間隔中沒有偵測到顯示缺失節拍的長間隔。
然而,95.998 BPM 是分析估計值,並不能保證達到該數量級的測量精度。檢測以 2 毫秒為增量完成,並包括記錄和分析系統中的錯誤,因此不能說所有觀察到的變化都是由應用程式造成的。
此外,以 96 BPM 測量輸出聲音約 1 分鐘。其他節奏下的輸出聲音以及長時間播放造成的累積偏差尚未得到驗證。
特別有用的是,不僅可以用耳朵判斷沒有問題,還可以用數字來確認。 我們能夠在人工智慧的支援下進行測量和分析,這導致了深度確認。
我在生產版本中確認的內容
在此生產版本中,通過了 109 項自動化測試。除此之外,我正在驗證終端機上的以下行為:
- 節奏變化
- 熄螢幕時的播放操作
- 停止接收通知
- 重啟後保留設定
我們也確認,即使在燈關閉的情況下,音軌也能正常運作,並且在採集時該音軌的緩衝區短缺為 0。所獲得的結果並不能保證在整個播放期間不會出現聲音中斷。
雖然單獨進行測試的次數無法確定質量,但透過結合自動測試、終端操作和輸出聲音分析,我們可以從不同的角度進行檢查。
委託時遺留的問題
需要準備和維護執行環境
同時運行多個模擬器時,PC 的 CPU 和記憶體會受到限制。對於實際設備,連接方式和操作工具相容性狀況,對於雲端終端環境,也應考慮成本。
除了建立初始環境之外,還存在根據螢幕和規格的變化更新測試的麻煩。
人們也檢查預期的結果和圖紙。
如果預期結果本身就是錯誤的,那麼無論你執行多少次測試,你都無法正確評估它。當將開發和測試委託給同一個人工智慧時,必須注意相同的規範解釋可能會被繼承。
因此,規格和結果的最終確認是由人類來完成的。同樣重要的是,不要讓你無法執行或判斷的專案通過考試。
一些繪圖問題和操作過程中的不適,僅憑靜止影像很難判斷。我們將在向公眾發布之前留下觸摸和檢查實際機器的過程。
規格和螢幕也可作為傳遞給外部各方的訊息。
傳遞給人工智慧服務的規格和螢幕截圖可能會洩露未公開的功能和業務內容。處理委託項目或用戶資料時必須特別小心。
我們分別檢查資料是否用於學習、保存多長時間以及誰可以訪問,並確定要使用的合約和設定是否滿足專案的條件。虛擬資料和測試帳戶的使用也是您在實施時應該決定的。
在個人發展方面,你可以主要負責人工智慧。
“在獨資經營者層面單獨使用人工智慧進行應用程式測試可以嗎?”
根据我的经验,我的答案是,大部分测试工作都留给你了。不过,最终确认和发布的决定权由本人决定。
至少,結果比我自己所取得的成果好。這是因為我們發現了一個我們忽略的錯誤,並且能夠驗證從內部計算到實際輸出聲音的所有內容。
這並不表示相對於一般工程師或 QA 工程師的優劣。我的經驗是,我能夠使用人工智慧來彌補我測試技能的缺乏以及自己進行開發和驗證的限制。
自營工作者要求你在有限的時間內身兼數職。 AI也需要準備和確認,但透過委託它重複執行、記錄和問題調查,你可以花時間做出重要的決定。
能夠擴大一個人的工作量並推進到以前無法實現的確認。 這是開發節拍器時AI測試最重要的價值。