在游戲測試中,對于目前的兩大游戲引擎cocos-2dx、unity3d,其ui自動化測試的技術方案都已經(jīng)實現(xiàn)??梢垣@取、設置ui對象的各個屬性,并且可以調用ui對象及引擎的一些方法接口,實現(xiàn)基于引擎的ui驅動能力。有了這些能力之后,從技術上來說已經(jīng)可以實現(xiàn)基于引擎的游戲ui自動化測試。但是單純的ui驅動能力還不足以實施一個游戲的ui自動化測試,還需要滿足以下幾個條件。
1.UI相對穩(wěn)定,UI元素及布局在各個版本間變動不大,各個UI元素的關鍵屬性(特別是用于唯一標識該UI元素的屬性)保持穩(wěn)定,其他屬性可以根據(jù)需要發(fā)生變化。
2.操作過程及結果可預期,交互的過程及預期結果是明確的,如果交互過程及預期結果不明確,有太多的隨機性,會大大增加腳本的邏輯復雜度。
3.產品生命周期長,因為UI自動化測試腳本的開發(fā)、維護成本都比較高,如果被測產品的生命周期太短,或者只發(fā)幾個版本,就會導致自動化測試的投入產出比太低。
4.操作過程及結果很難預期,游戲戰(zhàn)斗過程充斥著各種隨機性和玩家操作的不確定性,導致預期結果需要復雜的實時計算才可以得出,無法提前預期。
5.生命周期短,很多游戲只有短短幾個月的生命周期。這些因素都導致了游戲的UI自動化測試成本太高。
推薦閱讀