去年這時候,我應本地一家軟體公司邀請,參加該公司軟體測試工作改進的座談會。這次座談會其實是一次診斷會或諮詢會,本地知名的不少專家都去了,包括幾所大學有名望的教授。會議的宗旨是幫助該公司改進測試工作,進而提高軟體產品的質量,而其中乙個議題就是討論如何開展自動化測試,特別是針對它們的產品,選擇什麼樣的軟體測試工具。在座談會之前,該公司已經有了初步計畫,欲投資200
萬元購買惠普公司mercury
系列測試工具,也就是市場上比較流行的loadrunner
、quick test professional
(qtp
)等。由於該公司效益比較好,產值在億元以上,幾百萬的投資不是很困難的事。不過,在座談會上,鑑於該公司從來還沒有開展過自動化測試工作,而且公司主要以面向終端使用者的軟體專案開發為主,雖然會慢慢形成軟體產品,但使用者的需求不夠穩定。我建議,剛開始時,在自動化測試工具上不宜進行過大投資,如果自動化測試實施效果不好,反而比較被動。所以,可以先採用開源自動化測試工具(如selenium
、jmeter
),進行為期半年的實驗階段。如果這些工具能滿足企業的需求,就不需要購買商業化工具;即使不能滿足需求,在團隊對自動化測試有了更深的理解而且能力得到了提公升之後,到時再購買商業工具也不遲。
我知道,我的建議被採納的可能性比較小,但從那時起,我就有計畫寫一本自動化測試的書,介紹開源(open source
)測試工具,讓大家全面了解這些成熟的開源工具,將它們應用於實際測試專案之中,為企業節省大量開支。通過循序漸進的方式講解如何開展自動化測試,並且沒有自動化工具的大投入所帶來的壓力,測試人員借助本書和開源工具,能夠輕輕鬆鬆地開展自動化測試工作。相對商業工具,開源測試工具能使我們得到更好的鍛鍊,使企業的特定需求得到更好的滿足,為什麼呢?因為開源測試工具幾乎不提供培訓,文件也不全,需要自己更多的摸索,經過不斷摸索和實踐,自己的能力自然提公升較快;更重要的是,開源測試工具提供了源**,如果某些地方不能滿足企業的要求,我們可以找到相應的地方對**進行修改,擴充其功能,使之滿足新的需求。
自動化測試也是從無到有、由淺入深,逐步走向成熟。但從國內看,自動化測試還不夠普及,沒有得到足夠的重視,正如dion johnson在2023年10月在better software上發表文章《自動化測試成長(test automation grows up)》指出,人們往往把自動化測試當成是手工測試的附屬品,就像當年把測試當成是開發的附屬品一樣。今天,軟體開源運動(open source)蓬勃發展,測試工具可以信手拈來,其投入小,必然使自動化測試快速得到普及。借助網際網路,人們也非常方便地分享經驗和保持良好的溝通。這一切,都會給自動化測試帶來新的發展機遇,極大地促進自動化測試的快速發展。
從2023年開始提倡開源軟體,開源軟體在過去十年得到了蓬勃發展,從作業系統linux、資料庫mysql、程式語言php、整合開發環境eclipse到瀏覽器firefox,已滲透到各個領域,並結出了豐碩的果實,得到了業界廣泛認可。在軟體測試領域,開源軟體也不例外,從單元測試、功能測試到效能測試,從web頁面測試到資料庫、多**、通訊等應用領域的測試,以及軟體測試管理平台、缺陷跟蹤系統等,都可以找到合適的開源測試工具。可以說,目前成熟的開源測試工具可以覆蓋整個測試的生命週期,針對各種測試任務,我們都能找到合適的開源測試工具。21世紀軟體測試發展的乙個重要趨勢之一,就是開源測試工具會迅速發展,得到廣泛的使用,成為商業工具的有力競爭者。開源測試工具最終能和商業工具平分秋色、甚至成為其替代者。
開源軟體,至今已十年有餘,可謂「十年磨一劍」,忽然使我想到了「七劍下天山」。清朝初年,武林高手不斷被追捕,天下大亂、天山名宿晦明禪師四位高徒連同三位劍俠——七劍下天山,拯救中原,欲救天下黎民百姓,免受清軍鐵蹄蹂躪。正可謂「無限深情、捨己為人甘替死,絕招雪恨、闖關破敵勇除奸」。所以,我就將本書中重點介紹的七大開源測試工具比喻為天山七劍——遊龍、青干、莫問、日月、競星、天瀑和舍神。這也是構成本書的重頭戲——從第3
章到第9
章,共七章。 1)
莫問劍selenium
的web功能測試,變化無窮、氣勢磅礴。第3章介紹了selenium旗下的四大金剛——selenium ide、core、remore control和grid 及其應用,從而使我們能夠有效地完成大規模的、分布式的web應用系統的自動化測試。 2)
遊龍劍autoit
實施功能測試,靈活快速、削鐵如泥。第4章在介紹了autoit語法特徵之後,通過兩個不同型別的完整例項,讓我們知道如何借助autoit完成windows客戶端軟體的自動化測試。 3)
舍神劍jmeter
的效能測試,開山闢石、無堅不摧。第5章涉及jmeter的指令碼錄製和開發,以及如何通過jmeter完成複雜的、分布式大規模壓力測試以及資料庫的效能測試。 4)
日月劍junit
的單元測試,變化奇快、豐富多彩。第6章從持久層和action層的測試到完整的自動化單元測試,junit展示了其魅力,並很容易和cvs、ant等整合起來。 5)
競星劍emma
覆蓋率分析,出劍神速,迅雷不可目睹。在眾多的覆蓋率分析工具中,emma工具脫穎而出,第7章在介紹了覆蓋率分析的意義及其常用工具之後,著重討論了如何通過命令列和ant整合等應用方式,完成覆蓋率的收集和分析。 6)
青干劍mantisbt
管理缺陷,奇鈍無比,卻可抵擋天下最鋒利的**。第8章全面展示了mantisbt的安裝及其使用方法,其中也融合了缺陷管理的思想和流程。 7)
天瀑劍testlink
管理測試,無為而為,形無虛實,專一嚴謹。從頭到尾,第9章幫助讀者完整地領略軟體測試需求、測試用例的管理思路,以及如何通過testlink具體地實施測試計畫、測試執行和測試結果評估等。
在介紹這些工具之前,第1
章先讓大家親手完成乙個簡單的自動化測試,然後講解自動化測試的作用和特點、如何引入自動化測試和如何選擇合適的自動化測試工具。然後,用一章的篇幅,由淺入深地剖析自動化測試的原理,包括不同物件的識別和各種指令碼技術等。
在介紹完這些工具之後,一方面通過介紹不同層次或不同方面的自動化測試框架,以設法幫助讀者構建乙個完整的、理想的自動化測試框架;另方面對自動化測試實施進行總結,並和讀者進一步分享作者多年來所積累的自動化測試最佳實踐。
本書原附錄c已移去,其參考指令碼的正確位址是:
輕輕鬆鬆自動化測試-附錄.rar
輕輕鬆鬆自動化測試
試讀本書
全部品種
免費試讀 第2章
免費試讀 第6章
2007版本中國網路新秀之七劍下天山
2007版本中國網路新秀之七劍下天山 電影 七劍 的介紹,武俠中的七劍我已經明了,2007 網際網路的新生英雄層出不窮,那網路新秀七劍是哪些呢?tomos 由龍劍持劍人 楊勇,全新模式,號稱中國 web3.0 的領航人,公測初試劍,便劍氣逼人,大勝而歸。該劍特點 是一劍既出,眾劍稱臣。劍頭軟,能抖動...