淘寶新自動化測試框架AutoRobot簡要介紹
一、自動化測試發展
自動化技術在不斷的發展,從簡單的錄制回放到數據驅動到關鍵字驅動,再到模型驅動,每一次自動化技術的發展都會帶來自動化測試工具的革新,而每一次新的測試工具的誕生都會帶來新的突破,新工具的出現帶來了新的體驗但是也不可避免的有一些缺陷,正是因為此,才推動測試框架不斷的完善,強大,下圖展示了基于GUI的功能自動化測試技術的發展:
二、淘寶自動化測試框架發展
隨著自動化技術的發展,淘寶自動化測試框架也在不斷的完善,從Tcommon到Automan再到現在的AutomanX,測試框架的完善帶來的是自動化效率的提升,相對來說,AutomanX已經相當的完善了,但是AutomanX是一個集成化,模塊化的的測試平臺,需要測試人員具備一定的編碼能力,并且對mvn,junit,spring等技術有一定的了解才可以進行測試腳本的編寫,同時,AutomanX是基于pageModel的,在進行腳本編寫時,需要先建立pageModel,增加了腳本編寫的工作量,基于此,我們又開發了新的自動化測試框架AutoRobot,來完善AutomanX的這些問題。下圖展示了淘寶自動化測試框架的發展概覽:
三、AutoRobot介紹
1.功能介紹
AutoRobot是關鍵字驅動的測試框架,核心基于Selenium2.0。AutoRobot針對不同能力的測試人員提供兩種腳本設計方式,一種為NoCoding方式,通過選擇頁面元素及對應操作來完成測試步驟的設計,另外一種為傳統的Coding方式,通過編寫代碼完成測試腳本設計,無論使用哪種方式,AutoRobot都支持自定義的關鍵字設計,除了框架提供的統一的關鍵字定義外,不同業務可以根據業務需要設計適合自己的關鍵字,下圖展示了AutoRobot的主要功能:

2.整體架構
AutoRobot使用Selenium進行元素交互,使用Freemaker進行操作步驟和測試代碼轉換,使用junit進行測試用例組織,使用chrome插件進行頁面元素自動拾取,在這些基礎之上AutoRobot支持各種關鍵字的擴展,整體的架構如下圖所示:
3.NoCoding腳本設計
AutoRobot使用Chrome插件進行元素拾取,使用關鍵字定義進行元素操作,設計好的測試步驟可以轉化為自然語言描述的操作步驟,可以轉化為java測試方法,還可以轉化為XML語言描述的測試步驟,設計好的測試步驟如下圖:
4.Coding模式腳本設計
使用Coding模式設計腳本,可以完全不需要在WEB上進行操作,但是最好的方式是先使用NoCoding的方式設計好測試步驟,再利用AutoRobot提供的java工程下載功能,將轉換為java工程的測試下載到本地,如下圖
下載完成后解壓縮,使用IDE導入工程,可以看到一個完整的測試工程,如下圖所示
通過AutoRobot下載的java工程是一個完全可運行的工程,如果對自動轉換的腳本需要進行修改完善,可直接再導入后的工程中進行修改編譯,下圖展示的是AutoRobot自動轉換的腳本
posted on 2014-06-25 11:40 順其自然EVO 閱讀(1782) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄 、selenium and watir webdrivers 自動化測試學習