智能測試不是一種全新的測試類型,它存在于傳統(tǒng)測試的某個或多個環(huán)節(jié)中。當(dāng)今市場主流的軟件自動化測試工具,在基礎(chǔ)理論部分是相通的,但也都有自己的特性和技巧。從這些自動化測試工具中我們也可以看到當(dāng)前軟件測試行業(yè)的發(fā)展趨勢。
1、Rational Functional Tester 的基礎(chǔ)是針對于Java、.NET的對象技術(shù)和基于 Web 應(yīng)用程序的錄制、回放功能。工具為測試者的活動提供的自動化的幫助,如數(shù)據(jù)驅(qū)動測試。IBM RFT是一個用于功能和回歸測試的數(shù)據(jù)驅(qū)動的測試平臺。它支持大范圍的應(yīng)用,例如.Net、Java、SAP、Flex和Ajax。RFT使用Visual Basic。Net和Java作為腳本語言。
2、UFT(別名:QuickTest Professional簡稱QTP)是一種自動化測試工具,以VBScirpt為內(nèi)嵌語言,其前身是QTP。UFT支持功能測試和回歸測試自動化,可用于軟件應(yīng)用程序和環(huán)境的測試。UFT自動化測試的基本功能包括:創(chuàng)建測試、檢驗數(shù)據(jù)、增強測試、運行測試腳本、分析測試結(jié)果、維護測試;UFT支持兩種視圖,一種是Keyword View(關(guān)鍵字視圖),另一種是Expert View(專家視圖)。
3、Robot Framework是一個完全基于關(guān)鍵字測試驅(qū)動的框架,它即能夠基于它的一定規(guī)則,導(dǎo)入你需要的測試庫(例如:其集成了selenium的測試庫,即可以理解為操作web控件的測試底層庫),然后基于這些測試庫,你能應(yīng)用HTML、TXT等文檔形式編寫自己的關(guān)鍵字(這些關(guān)鍵字即你的庫組成),之后,再編寫測試用例(測試用例由測試關(guān)鍵字組成)進行測試。
而國產(chǎn)自動化測試工具方面,專注于行業(yè)十?dāng)?shù)年的軟件測試服務(wù)商Testin云測試將AI智能化作為測試技術(shù)升級的重要推動力,構(gòu)建以視覺識別和自然語言理解為技術(shù)支撐點的全新自動化測試平臺TestinPro。其在腳本編寫及目標(biāo)對象識別上應(yīng)用的智能化技術(shù)包括:基于深度學(xué)習(xí)構(gòu)建的OCR文字識別、圖像識別、自然語言處理引擎三大AI能力。
為避免傳統(tǒng)自動化測試框架或工具對應(yīng)用視圖樹的強依賴,腳本隨著App版本升級、手機系統(tǒng)升級、微信內(nèi)核升級、App加固混淆等,造成腳本維護成本高從而導(dǎo)致自動化價值大打折扣的問題。使自動化技術(shù)在回歸測試場景中由不能變?yōu)榭赡?并成功落地,整體提高回歸測試的效率,縮短發(fā)布周期,保障產(chǎn)品質(zhì)量,過程中也會測試留痕便于測試過程回溯。
據(jù)統(tǒng)計,相比傳統(tǒng)的自動化測試,智能測試在UI自動化測試場景覆蓋率提升30%、編寫效率提升100%、維護成本下降60%。在移動端證券類App自動化測試覆蓋率達60%。在銀行類App自動化測試覆蓋達70%。傳統(tǒng)的自動化測試覆蓋率只能實現(xiàn)30%左右,另外還需要投入大量的研發(fā)交付成本。
軟件測試工作效率為先。相信隨著人工智能技術(shù)的不斷發(fā)展,以AI最為底層技術(shù)支持的智能測試,可以給更多數(shù)字化轉(zhuǎn)型中的傳統(tǒng)行業(yè)帶來最優(yōu)的測試解決方案,加速傳統(tǒng)行業(yè)數(shù)字化轉(zhuǎn)型進程。