做者 鄂攀測試
最近在作銀行內部系統的一個流程自動化的時候發現有些頁面比本身想象的複雜了不少,多是由於測試系統的緣故,因此這樣的異常在所不免吧,可是既然是作POC,無論什麼樣的疑難問題都是要解決的。
上面圖片,是最近作POC的時候,碰見的一個異常彈出框,腳本性錯誤:JS
這樣的錯誤,首先用到的第一個方法是UiBot的元素判斷
可是測試事後,返回的是False,意味着這個異常的彈出框並不能找到元素。
而後嘗試第二種我認爲萬能的方法:圖像判斷。
結果使人驚奇的是,返回的居然仍是False,這讓人很無語啊。
無奈之下嘗試了UiBot的第三種方法:文本判斷。
此次終於返回True了!!!(對於功能強大的RPA軟件來講,總有一種方法會給你驚喜)
這個界面判斷的問題解決了,那麼接着須要作的就是關閉它了 ,我原本覺得會很簡單,但是對於這個異常狀況來講在這裏我又想多了。
這裏我首先嚐試了第一種:鼠標點擊。
我用了三種模式:後臺 系統 模擬。發現都是點上了 ,可是沒有反應,彈出框也並無關閉,這就很好奇,意味着雖然選中了,可是沒有給你反饋。spa
所以我用了第二種方法:關閉窗口。
發現仍是關閉不了,我不得不敬佩銀行內部測試系統的無敵了,此處我採用了第三種方法:鼠標點擊+模擬按鍵。
它完美解決了這個關閉問題,可是另外一種現實狀況是,此處彈出框不止這一個,而是隨機的每次可能有一到六個不一樣類型的彈出框。(六種能夠採集到)
若是你只是用單個元素循環去作判斷,那麼你前後順序確定無法處理,由於這個地方是隨機出來,你不肯定哪個先出現,因此此處採起了計次循環。
把六種異常狀況全寫在裏面,計得次數最好大於彈出框的種類以及可能彈出的最大次數,而後每次作界面判斷的等待時間能夠儘可能縮短,否則會發現有時候沒有的界面等待時間會好久,這樣給客戶的友好體驗感會有所降低。
總之,一般像一些異常的彈出框 ,有時候真的很難用RPA軟件的某一常識性控件去處理解決掉,因此在處理問題的時候想出多種解決方案很重要(這和RPA軟件的功能全面性有很大關係,決定可否助力你有多種備選計劃),固然,首要標準仍是穩定爲主。
如下總結了窗口型的解決方案,僅供參考。
3d