自動化測試商用工具昨日黃花,開源工具如日中天;
自動化測試工具方面幾年前一直是商用工具的天下,這幾年以Selenium為首的一系列開源工具不斷攻城掠地,不但國內(nèi)的互聯(lián)網(wǎng)公司,國內(nèi)的大型行業(yè)客戶(如金融行業(yè),交通行業(yè))也紛紛擁抱開源自動化測試工具。
Selenium的WebDriver測試接口協(xié)議也成為了W3C規(guī)范草案(http://www.w3.org/TR/webdriver/),被各大瀏覽器廠商認(rèn)可,這說明了Selenium的江湖地位已經(jīng)牢不可破了。坦率地來講,在Web界面自動化測試領(lǐng)域,已經(jīng)沒有任何理由采用商用工具了。
自動化發(fā)展階段
《實例化需求》一書是2012年Jolt圖書大獎的獲得者,當(dāng)年就引進(jìn)中國。實例化需求的思想其實和驗收測試驅(qū)動(Acceptance Test Driven Development)類似。
但是兩者都需要測試案例具備很高的抽象層次,可以被業(yè)務(wù)人員和開發(fā)人員很容易地讀懂,這就需要實現(xiàn)測試DSL(Domain Specific Language),也就是說需要在一個特定領(lǐng)域之內(nèi),將特定測試能力封裝成一門易于業(yè)務(wù)、測試、開發(fā)理解溝通的專用測試語言,然后用這門DSL來編寫實際測試案例。
Robot Framework作為一個關(guān)鍵詞驅(qū)動框架,可以很好地支持測試DSL的定義。下面就是我們團(tuán)隊在一家跨境電商公司實現(xiàn)的測試DSL,供大家參考:
自動化測試流程
本人認(rèn)為,作為一名測試人員,不應(yīng)該區(qū)分手工測試人員和自動化測試人員,自動化測試技術(shù)是每個測試人員都必須掌握的技能,包含性能測試,目前企業(yè)普遍需要的還是技能廣度的人才。
如果有一天你還需要靠技術(shù)生存,那么你將要永無休止的折騰自己的人生。
自動化測試面對的挑戰(zhàn)
自動化測試和性能測試
廣義的講:
凡是替代手工測試,可以通過自動化工具實現(xiàn)的都是自動化測試;
自動化測試包括單元測試、接口自動化測試、安全自動化測試、性能自動化測試等等;
也就是說,性能測試是自動化測試的一個子集。
狹義理解:
自動化測試僅指功能自動化測試,包括UI及功能實現(xiàn)等;
性能測試關(guān)注的是系統(tǒng)性能表現(xiàn),包括穩(wěn)定性測試、壓力測試、容量測試等等。
企業(yè)分工情況
測試開發(fā)組:不管功能業(yè)務(wù),只負(fù)責(zé)工具、框架的開發(fā)
測試組:即熟悉業(yè)務(wù)邏輯、同時兼顧工具開發(fā)、性能測試、用戶反饋
功能測試組:只做業(yè)務(wù)功能的測試
測試工程師發(fā)展之路
python能做什么
1.著名的Google公司在其網(wǎng)絡(luò)搜索系統(tǒng)中廣泛應(yīng)用Python語言。同時還聘用了Python之父 (Guido van Rossum)
2.國外知名的YouTube視頻分享網(wǎng)站,一些重要的服務(wù)也幾乎都是用Python編寫的程序;
3.P2P文件分享系統(tǒng)Bittorrent是一個Python 程序。
4.Intel 、Cisco 、Hewlett-Packard 、Seagate 、Qualcomm 和IBM 也都使用Python 進(jìn)行硬件測試
5.JPMorgan Chase 、UBS 、Getco 和Citadel 使用Python,經(jīng)濟(jì)市場預(yù)測領(lǐng)域也能看到python的身影。
6.高科技含量的領(lǐng)域也有Python語言的身影,像是NASA 、Los Alamos 、Fermilab 、JPL 等使用Python 實現(xiàn)科學(xué)計算任務(wù);
7.IRobot公司使用Python 開發(fā)了商業(yè)機器人真空吸塵器;
8.NSA 在加密和智能分析中使用Python 。
9.IronPort 業(yè)界領(lǐng)先的互聯(lián)網(wǎng)信息安全產(chǎn)品提供商,也在電子郵件服務(wù)器產(chǎn)品中使用了超過100 萬行的Python 代碼實現(xiàn)其工作;
10.自動化、測試工具、爬蟲、運維......