自動化測試工具生態系統建設的思考
百度百科上查到,軟件生態系統指的是:能夠創造戰略優勢、迅速適應不斷變化的業務需求并具備高度可靠性與伸縮性的應用程序。自動化測試工具軟件作為一種特殊的軟件分類,也應該有自己的生態系統。在這方面的思考和探索,會給我們帶來更大的收益。
先回顧一下,咱們工具組對外提供的主要的工具。
軟件開發出 來是要賣的,自動化測試工具開發出來也是需要推廣的。自助式是我很推崇的一種方式,什么都展示出來,供有需要的人自行挑選。如果我們的業務測試團隊清楚地 知道我們能提供什么樣的工具,他們就會去主動選擇工具組提供的工具!如其等著別人來索取,絕對不如主動對外發布。一個人向你索取,你需要花費一番精力提供 信息,第二個向你索取,你還是需要花費同樣的一番精力提供信息,第三個、第四個,你都需要重復花費等量的精力。但是你主動推廣、主動發布信息,其他同事知 道去哪里獲取信息,就不會打擾你,你的思路不會中斷,你才會更有效率。對于需要獲取信息的人,也很快捷!
作為工具開發部門,主動發布、推廣現有的工具是工作內容的一部分,也是測試工具生態系統建設的一部分。對于工具的介紹,我們有專門的站點來維護一個工具展示列表;對于工具的培訓、使用手冊,我們維護在內部分享平臺上;對于工具的獲取我們提供了SVN來發布對外提供的工具。
我個人來講,主要負責Web應用、開放平臺開放接口的自動化測試,對外提供的分別是SmartAutomation For Web、SmartAutomation For Open API。SmartAutomation For Web為基于Selenium Server開發的針對Web應用的自動化測試工具,測試用例腳 本文件基于XML格式。測試腳本開發人員不需要熟悉Java或其他編程語言,即可用編寫滿足各種業務需求的自動化測試用例腳本。 SmartAutomation For Open API適用于測試開放接口OpenAPI的自動化測試,即用于處理、解析訪問URL返回的普通分割文本、XML格式的文本、JSON文本,并支持對返回的 文本進行驗證等。該工具支持HTTP GET、HTTP POST請求方式,支持HTTPS。支持正則表達式驗證、支持自定義屬性$PROPERTY、支持對URL的參數化等。同樣不需要編程即可完成自動化測 試。使用、曾經使用或參加過這些工具相關培訓的同事主要有o**y、**y、**欽、**斐、**裕、**鵬、**波、**佳、**ie、**旭、** 偉、**ex、**超、**磊、**盟、**勇、**芳、**偉、**春、**花等,來自技**持、**測試部、**測試部、實**務部、**中心等部 門。
上面說的是兩個工具,其實是基于同樣底層架構設計的一套工具。拿到SmartAutomation的發布版本之后,可以用來測試 Web應用,你也可以用它自動化測試開發接口。都是基于XML,語法規則都相似,學會一個之后,另外一個幾乎無師自通,就像MS Word和MS Excel的關系一樣!還有一個SmartAutomation For Android,我的同事們在負責。雖然系出同門,都是基于XML設計的同樣的code base,但遺憾的是,為適應android,語法規則上漸行漸遠。
上面提到若干部門、若干同事、若干工具,當工具增多,使用工具的人增多時,才開始逐漸的形成一個生態圈。工具增多,但不各自獨立,擁有共同的語法規則,降低學習成本,共同形成一個大的測試工具平臺。使用者增多,對工具的使用經驗可以移植,相互之間可以交流使用經驗,相互推廣等。
一些粗淺想法,歡迎交流!
本文轉載自:http://loggingselenium.com/?p=355