返回部落格

AI Agent 網頁操作測試:四層驗證與指標

讓 AI Agent 操作網頁之前,先用四層測試確認環境與 Agent 這條鏈路可用:單步冒煙、多步任務、併發壓測與異常注入,每層都說明該關注哪些指標。

在展示環境裡跑通一次,和這條鏈路能不能天天用,是兩件事。

要做判斷,只能把測試拆開:環境那一層歸環境驗,Agent 那一層歸 Agent 驗,最後再看兩者接起來穩不穩。

AI Agent 网页操作测试:四层验证与指标的关键步骤与判断维度示意图

單步冒煙:四件事各做一遍

冒煙測試只做四件事,而且一件一件單獨做,不要串起來:開啟一個指定頁面;在頁面上定位到某個元素;點下去;把該元素的文字取回來。四件都通過,表示連線、工作階段和元素存取這三項基礎設施是通的。

只做四件的好處是失敗面很窄。開啟頁面失敗,多半是網路出口或存取權限的問題;能開啟但定位不到,通常是頁面還沒載入完就去抓,或者定位方式過度依賴目前版面配置;能定位卻點不動,就看元素是否被遮擋、是否在 iframe 裡;取回的文字是空的,先確認取得的是渲染後的內容,而不是初始 HTML。

這一段要看三個數字:單步成功率、單步耗時、錯誤類型分布。它們在冒煙階段就該穩定,如果單步成功率只在 80~90% 上下浮動,後面的測試沒有意義。

多步任務:分支比步驟數更關鍵

把剛才的四步串成一條真實任務,例如填一份表單、翻幾頁、依條件篩選、把結果寫回本機。步驟變多只是量變,真正的難點是分支:中途彈出提示、目標元素消失、頁面主動跳轉、碰到需要人工確認的驗證環節。

這裡看的是任務完成率,不是步驟成功率。失敗之後能不能自己調整路徑,能不能判斷什麼時候該停下並明確回報,比能否跑完全程更重要。

還有一個容易被忽略的數字是人工介入次數。同一個任務跑二十遍,介入過幾次、每次卡在哪一步,比整體完成率更能說明這條鏈路的成熟度。

併發與異常注入

單條鏈路穩定之後,再疊加併發。同時啟動多個環境執行同一類任務,看環境之間是否互相干擾,以及失敗率是否隨併發數上升而惡化。這個階段出現的失敗,往往不是 Agent 邏輯寫錯,而是資源或工作階段層面受到擠壓。

異常注入是最容易被跳過的一類測試,也是最需要做的一類。逾時、元素中途消失、工作階段過期、CAPTCHA 出現,這幾種情況都要人為製造,觀察鏈路如何反應:逾時之後是重試成功,還是卡死不動;工作階段過期之後是明確報錯,還是帶著失效的憑證繼續往下跑。

指標記三個:併發下的失敗率曲線、異常發生後的恢復成功率、單次異常帶來的額外耗時。恢復成功率低,表示這條鏈路只能在順利情況下運作。

環境那一層要單獨驗

上面的測試都在一個環境裡完成,但多個環境放在一起時,還得單獨驗一層:每個環境要能獨立啟動,獨立持有自己的工作階段與快取,獨立綁定出口 IP。

多帳號營運的團隊通常會把環境按帳號拆開管理,PurpleMark 這類工具提供的就是環境隔離,給每個帳號一份獨立的執行空間。測試時的做法是併發啟動若干個環境,確認彼此之間的 Cookie、快取和出口沒有串在一起。

對環境這一層,看三個數字:環境啟動成功率、環境之間的資料串擾(正常情況下應該是零)、環境重建之後工作階段能否延續。

失敗之後怎麼歸因

鏈路出問題的時候,最容易犯的錯是直接去改 Agent 的腳本。更合理的順序是先確認環境能不能起來、工作階段有沒有過期,再看網路出口和節點是否正常,最後才懷疑 Agent 的元素定位與任務規劃。順序反了,就會在錯誤的地方反覆修改。

單步冒煙那四件事,其實也是歸因工具。任何一次失敗,都先回到這四件事上單獨跑一遍,看是哪一環先斷開。多數時候答案在這一步就出來了。