- AI自動化測試:技術原理、平臺搭建與工程實踐
- 騰訊TuringLab團隊
- 889字
- 2020-08-13 13:47:00
1.1 自動化測試的發展與現狀
程序是人類思維的產物,人的思維難免會有差錯,因此軟件從誕生那天開始,就一直與測試相伴。早期的軟件規模都很小,復雜度也不高,傳統的手工測試就能很好地完成。隨著軟件技術的發展,軟件規模和復雜度的提升,手工測試的時間成本越來越高,在這種情況下誕生了自動化測試的思想與技術。
從技術發展的角度來看,自動化測試經歷了四代,如圖1-1所示。
第一代:傳統的“錄制-回放”技術。這種技術模擬PC操作,記錄鍵盤和鼠標的操作,對環境的依賴性太強,只要新版本的用戶界面或功能發生改變,以前錄制的信息就不能用了,維護成本太高。

圖1-1 自動化測試技術的4個發展階段
第二代:腳本化的自動化測試。利用腳本進行結構化的自動化測試。測試腳本可以通過工具自動生成,也可以由測試開發人員手動開發完成。當軟件功能發生變動時,測試腳本也需要同步更新。
第三代:測試框架。主要是把測試腳本抽象化、模塊化,包括數據驅動與關鍵字驅動,測試人員可以直接使用測試開發人員封裝好的業務模塊。編寫出的自動化腳本也具有一定的泛化性。項目的維護主要體現在業務模塊封裝或關鍵字抽象等方面。
第四代:AI自動化測試。在傳統的自動化測試技術基礎上,引入AI技術,主要想解決自動化測試中的高通用性、低使用門檻及低維護成本等自動化測試的難題。目前,AI自動化測試還處在初期階段,技術與方法的應用也在探索中。
騰訊互娛游戲的測試方法有以下4種,一般在一個項目中,測試人員會根據需求選擇其中一種或幾種測試方法。
1)測試人員手動測試:測試人員根據開發人員提交的功能,編寫測試用例,然后評審測試用例。開發人員完成功能開發后,測試人員再手動逐條執行測試用例。
2)腳體自動化測試:在一些方便使用自動化測試的場合,引入自動化測試,通過相應的工具,手動或自動生成需要的自動化測試腳本,然后通過回放自動化測試腳本進行測試,完成測試后,由人工或自動化算法進行結果檢測。
3)代碼級別測試:一些特定的測試需要測試人員通過編寫代碼來完成,如后端服務器程序的性能測試。
4)AI自動化測試:基于機器學習的方法,模擬人類玩家進行游戲操作,完成游戲場景的相關操作,達到自動化測試的目的。
- Oracle從入門到精通(第3版)
- Beginning Java Data Structures and Algorithms
- Visual C++串口通信開發入門與編程實踐
- Python深度學習
- C#程序設計(慕課版)
- Flash CS6中文版應用教程(第三版)
- JavaScript 程序設計案例教程
- Selenium Testing Tools Cookbook(Second Edition)
- Learning Hadoop 2
- 測試架構師修煉之道:從測試工程師到測試架構師
- Sitecore Cookbook for Developers
- Building Web and Mobile ArcGIS Server Applications with JavaScript(Second Edition)
- Learning Redis
- Java程序設計基礎教程
- Go語言Hyperledger區塊鏈開發實戰