安卓自動化停止條件:什麼時候重試,什麼時候停止?

BeePOS LLC  |   |  11 分鐘閱讀

可靠的安卓自動化不會一直點擊到「碰巧成功」。它會先確認目前頁面,為等待和重試設定上限,檢查操作結果,並在證據不足時停止或交由人工複核。

安卓自動化停止條件:什麼時候重試,什麼時候停止?
安卓自動化停止條件:什麼時候重試,什麼時候停止?

簡短答案:下一步沒有依據時就停止

安卓自動化停止條件是一條明確規則:當目前頁面、執行結果或等待時間已經不足以支持下一步操作時,流程不得繼續猜測。它可以安全結束、回傳受控結果、保存證據,或把任務交給人處理。重點不是遇到任何變化都停止,而是不把「不確定」誤當成「再點一次」。

  • 繼續:已確認目前頁面,而且下一步操作符合預期。
  • 重試:失敗可能是暫時的,而且有明確的次數和時間上限。
  • 停止或人工複核:頁面未知、操作有明顯後果,或事後條件沒有出現。

Android UI Automator 提供條件等待與穩定性檢查,WorkManager 也明確區分取消和停止後的處理。共同原則是:等待、重試和停止都要有邊界。

繼續、等待、重試、停止還是人工複核?

決策適用情況必須設定的邊界應保存的證據
繼續目前狀態與下一步操作都已確認一次經過審核的狀態轉換目前狀態與事後條件
等待App 正在載入或頁面尚未穩定逾時或明確的就緒條件等待時間與最後頁面
重試暫時性問題可能自行恢復最大次數與重試間隔每次觀察結果
停止頁面未知、條件不符或風險過高立即結束停止原因與截圖
人工複核流程無法安全判斷或操作有明顯後果負責人和處理時限完整交接資料

這五種決策不能互相替代。等待是給同一狀態時間完成;重試是有限地再觀察或恢復;停止是結束目前路徑;人工複核則用於自動化證據不足、無法安全選擇的情況。

第一步:先為每個重要頁面命名

從一條短流程開始,例如開啟測試版本、進入設定頁面、更改一個不敏感的選項,再確認新狀態。寫出起始狀態、預期狀態和允許出現的備用狀態,不要從一長串座標開始。

  • 為每個狀態選擇一個最關鍵的可觀察事實,例如 UI 屬性、可見文字、已知圖像或偵測目標。
  • 標出絕不能自動操作的頁面,例如意外帳號、權限、購買、刪除或正式資料頁面。
  • 讓另一位同事只看狀態定義,也能解釋為什麼允許執行下一步。

安卓圖像辨識自動點擊指南說明了為什麼「找到目標」還不夠:點擊前要確認頁面,點擊後還要驗證結果。

第二步:選擇能證明狀態的觀察方式

UI 結構適合確認標籤、選取狀態、控制項是否可用和項目數量。OCR 適合讀取 UI 樹無法穩定提供的可見文字。模板匹配適合外觀已知的目標;目標偵測適合位置或大小會變化、但類別已經驗證過的物件。

不要把幾個弱訊號疊在一起就稱為確定。應先定義一個承擔主要判斷的觀察結果,再把其他訊號保存為輔助證據。安卓視覺測試方法比較進一步說明了 UI 狀態、OCR、截圖、模板和偵測各自適合解決什麼問題。

第三步:為等待和重試設定預算

任何迴圈都不能無限執行。每次等待都需要逾時或明確的就緒條件;每次重試都需要最大次數、合理間隔,以及「為什麼再試一次可能成功」的說明。

失敗情況可以再試的原因安全邊界何時停止
頁面仍在載入同一頁面可能很快穩定等待穩定或逾時就緒條件始終沒有出現
元素暫時缺失內容可能稍後到達固定次數重新觀察預期元素始終不存在
點擊後沒有切換一次輸入可能漏掉重新檢查頁面後最多補試一次事後條件仍然缺失
出現未知彈窗或帳號再次嘗試不會降低不確定性不允許自動重試立即停止並交由人工複核

第四步:操作成功不等於任務完成

工具成功送出點擊,只能證明輸入已經嘗試,不能證明 App 接受了操作。可靠流程要驗證事後條件,例如新頁面標題出現、開關值改變、項目數量更新,或明確的成功狀態出現。

  • 檢查與業務結果直接相關的變化,不要只檢查動畫或點擊回饋。
  • 如果操作可能刪除、購買、傳送或公開發布,不要在結果不確定時自動重複。
  • 事後條件失敗時,保存證據並進入明確的失敗路徑。

第五步:失敗時留下可交接的證據

  • 流程和步驟名稱、App 版本、裝置、系統版本、語言和螢幕方向。
  • 預期狀態、實際觀察結果、嘗試次數和經過時間。
  • 失敗時的局部截圖,以及相關 OCR、匹配分數、UI 屬性或偵測結果。
  • 最後一個成功狀態、剛執行的動作、缺少的事後條件和停止原因。

好的交接資料應讓接手者不必先重跑整條流程,就能決定下一步。安卓自動化 QA 冒煙測試指南提供了更完整的真機檢查範例。

萊彩 Flow 如何表達這些安全邊界

萊彩 Flow 是萊彩投屏中的自動化功能。它可以把 UI 或視覺觀察、條件分支、等待、有限次數迴圈、子流程和明確結束放進同一個可檢查的工作流程。重點不是堆很多節點,而是讓每個「為什麼可以繼續」都看得見。

部署後,萊彩 Flow Inside 可以透過手機上的萊彩 Android Agent 執行相容的 Profile。相容性仍取決於 Profile 使用的節點、資源、模型和網路依賴;在手機端執行並不會消除重試上限、證據和人工複核的需要。

如果還在設計第一條流程,可以先在有人觀察的情況下使用萊彩投屏的 AI 安卓自動化,逐步縮小狀態條件,再決定哪些步驟適合無人值守。

部署前檢查清單

  • 每個操作都有明確的前置條件和事後條件。
  • 每次等待都有逾時,每次重試都有最大次數。
  • 未知頁面會停止或交給人,不會讓流程自行猜測。
  • 具有明顯後果的操作不會在結果不確定時重複執行。
  • 正確、錯誤、緩慢、中斷和意外頁面都已經測試。

可靠的安卓自動化不是執行時間最長的流程,而是能說明每個操作為何被允許、預期結果是什麼,以及證據變化後為什麼停止。

安卓自動化停止條件常見問題

固定延時可以代替條件等待嗎?

不能。固定延時可以降低頻率,但無法證明頁面已經進入正確狀態。應等待可觀察的就緒條件,同時保留總逾時。

為什麼自動化不能無限重試?

因為每次重試都會消耗時間,也可能重複產生副作用。只有當失敗是暫時的、操作可以安全重複,而且次數有上限時,重試才合理。

什麼情況必須人工複核?

頁面身分不確定、帳號或權限異常,或下一步會刪除、購買、傳送、公開發布時,人工複核通常比繼續猜測更安全。

參考資料

下載免費版

歷史版本 4.0.2: macOSWindows EXE

備註:僅支援安卓手機投屏。