人類文明發(fā)展的一個重要標(biāo)識是工具的誕生,當(dāng)人類開始制作工具來提高生產(chǎn)力時,就逐漸拉開了與其他生物的距離。曾在2013年,《Google如何測試軟件》中提到的分層自動化金字塔,轟動業(yè)界。而在互聯(lián)網(wǎng)時代的今天,標(biāo)識著測試技術(shù)重要進步的產(chǎn)物——自動化工具,也在逐漸推陳出新地用各種工具拉開企業(yè)間的差距。

圖解: Unit代表單元測試,Service代表服務(wù)集成測試,UI代表頁面級的系統(tǒng)測試;其中UI自動化,以其高度模擬用戶真實場景的測試方式,備受廣大測試人員的關(guān)注。但其高投入低產(chǎn)出的性價比,卻讓維護人員備受煎熬,讓很多研發(fā)團隊打退堂鼓,諸如以下三大難題:
1)人員:需要有一定代碼基礎(chǔ)的測試人員,根據(jù)不同UI框架,人員的代碼要求也都不同;
2)環(huán)境:編碼UI自動化需要的IDE(開發(fā)環(huán)境軟件)安裝復(fù)雜,以pwatir為例,需要裝java、ruby、mysql,修改環(huán)境變量等一系列復(fù)雜操作,順利情況也至少需要幾小時;
3)編碼/調(diào)試過程:與真實頁面場景脫離,需要來回切換編碼,操作不方便;
難怪業(yè)界有不少人說,UI自動化如同雞肋。
UI自動化如何擺脫這個尷尬的處境,為企業(yè)提效呢?
阿里云效平臺,通過項目流程管理和專項自動化提效工具,最終實現(xiàn)24小時持續(xù)集成、持續(xù)交付,旗下的UI自動化測試工具AUI,就是秉承上手快,易維護的原則,提供了在線的腳本錄制、腳本調(diào)試與維護等功能,腳本可以在本機回放進行功能測試,云端腳本執(zhí)行服務(wù)可以定時在后臺回放腳本進行項目的持續(xù)集成,業(yè)務(wù)功能的回歸以及線上功能的監(jiān)控等。
可以說,AUI是一款創(chuàng)新的WEB-UI自動化測試產(chǎn)品。它是基于selenium框架,有套獨特的控件定位算法,用于識別用戶的真實操作行為,現(xiàn)已有十幾項技術(shù)專利。
作為頁面自動化腳本錄制工具,其基本功能如下:
1)簡易的頁面元素選擇:直接點擊選擇頁面元素。
2)頁面中非 HTML 元素的錄制(例如:ActiveXObject):在頁面展示中運用了很多
ActiveXObejct 控件來實現(xiàn)頁面元素,AUI 同樣可以錄制控件元素。
3)純錄制產(chǎn)生腳本:AUI 中所有的腳本都是自動錄制完成,無需手工添加代碼語句,降低測試人員對腳本語言的編碼要求,并且和手工編寫腳本比較,能夠更加真實的測試用戶使用場景。
4)強大的測試點檢查:AUI的檢查功能相當(dāng)完善(例如:頁面元素顯示,cookie值,頁面跳轉(zhuǎn),在檢查頁面元素的顯示時還可以插入 sql 取數(shù)據(jù)庫中的值來匹配,并支持正則匹配)。
5)頁面中 特殊操作事件的錄制/檢查:AUI 插件中包含了其他錄制工具中很少包含的頁面操作的錄制功能,例如:滾動條滾動事件,可以拖放的頁面元素的拖放動作,彈出框,非文本框輸入、多級類目等。
6)測試中的數(shù)據(jù)修改:AUI 可以在測試過程中修改數(shù)據(jù),測試異常場景。例如,手動更改一些數(shù)據(jù)庫標(biāo)志位。
7)腳本支持多瀏覽器:腳本只需要錄制一次就可以在多個瀏覽器中運行,目前支持 IE、chrome、firefox。
8)高級的擴展功能:自定義命令和插件機制,支持二次開發(fā)。
9)詳細的失敗分類:精細化的失敗分類信息,方便精確維護。
除此以外,AUI針對一些復(fù)雜場景,設(shè)計了系列便捷的功能,最大程度地減少用戶的錄制和維護成本,例如:
1. 公共腳本
公共腳本:是一種含有權(quán)限控制且可被其他腳本引用的腳本。如:重復(fù)的登錄步驟,就可以錄制為公共腳本被其他腳本引用,當(dāng)?shù)卿洸襟E發(fā)生變化時,只用維護該公共步驟即可。
2. 參數(shù)化
參數(shù)化如同編碼中的變量,可將腳本中任意數(shù)據(jù)用參數(shù)代替,目前主要有驅(qū)動參數(shù)、靜態(tài)參數(shù)、數(shù)據(jù)庫參數(shù)、頁面參數(shù)等,例如:同一功能的多套環(huán)境(只是域名不同),可用驅(qū)動參數(shù)代替頁面URL,達到一個腳本測試多套環(huán)境的效果。
錄制AUI腳本的簡單流程:

不難看出,AUI可用于測試同一軟件的新版本、版本回歸及線上版本主干功能監(jiān)控。但若結(jié)合云效平臺的集成自動化,可24小時自動監(jiān)控發(fā)布質(zhì)量,無需人工介入。當(dāng)然UI自動化和集成自動化只是云效平臺中的一環(huán),如下圖所示:

云效平臺官網(wǎng)地址:http://yunxiao.aliyun.com
云效平臺試用流程:
在線申請——>權(quán)限審批——>免費7天試用——>在線技術(shù)支持——>回訪并提供定制解決方案。