軟體測試人員必讀的經典書籍(附電子書),前阿里大佬給我推薦...
軟體測試入行容易進階難。從測試小白成長為測試經理、總監級別人才,要跨越長長的技術棧升級之路,挑戰非常高的綜合能力要求。
大牛都是相似的:具備紮實的測試方法論基礎,能深入理解業務邏輯,會利用先進的技術工具,可以自主開發定製化服務,情商高善於溝通表達,懂管理能帶專案和團隊。
在成長過程中,從經典好書中汲取養分是提升技能的核心方式之一。
由於篇幅關係,肯定還有不少其他好書,歡迎大家在評論區留言推薦!希望在未來有機會能推薦更多的書籍。
都是前輩吐血推薦給我的,我在此也分享給大家:《軟體測試書單》
測試基礎書籍
1.《軟體測試》第2版
這本書可以用來作為進入行業的第一本書,本書講解的都是實用的技術,通過閱讀本書可以快速的去學會如何測試軟體。個人建議,這本書至少要讀3遍以上。
2.《軟體測試的藝術》第3版
測試人員的又一本經典書籍,對於軟體測試的技術特別是用例設計方面有很詳細的介紹,同樣建議初級測試從業者閱讀。
3.《全程軟體測試》第3版
朱少民老師的著作,已經寫到了第3版。雖然還是按照測試的流程為主線,但是卻增加了很多近年比較火的比如AI測試等內容,是一本難得的測試大全。
4.《谷歌軟體測試之道》
該書從內部視角告訴你這個世界上知名的網際網路公司是如何應對21世紀軟體測試的獨特挑戰的。《Google軟體測試之道》抓住了Google做測試的本質,抓住了Google測試這個時代複雜軟體的精華。
5.《軟體測試實戰–測試Web MSN》
以Web MSN為測試物件,形象生動地介紹了針對圖形介面的黑盒測試技術,有很強的實踐性。圍繞一個例項,全面地的介紹各種測試方法,是此書區別於其他測試書籍的一大特色。附文《膠著》是作者一段開發經歷的回顧與小結,有笑有淚,僅憑此文便值回書資。
6.《軟體測試之魂》
本書接下來明確了測試的目標,介紹了測試設計的各個環節,包括測試架構的設計、測試需求分析與測試策略制定、測試方案的設計、用例的設計、測試執行流程設計、測試輸出的管理設計、測試過程的控制方法設計等。最後,作者以追逐軟測之理念進行延展,旨在幫助讀者理解並站在測試工作之上看測試,如何超越自我進行測試創新,為走出一條屬於自己的測試精華之路提供指引。
7.《測試之美》
本書主要介紹各種優美的測試方法、測試工具、測試案例,以及傑出的測試人員和結構良好的測試群體。各種從業人員通過了解本書提供的不同場景並借鑑以往成功的經驗可以提高測試能力和水平。
自動化測試階段
1.《Selenium 自動化測試》
使用Python和Selenium進行Web自動化測試的實戰指南,掌握用Python語言通過呼叫Selenium 介面,搭建Web應用自動化測試框架 使用Selenium、Appium實現在iOS、Android端在內的移動裝置上的自動化測試。
Python unittest模組建立WebDriver測試用例,WebDriver跨瀏覽器測試,隱式和顯式建立可靠和健壯的測試。 在移動平臺,如iOS和Android使用Appium測試Web應用程式,捕獲測試執行的截圖和視訊
2.《軟體測試自動化》
這本書最吸引我的,還並不是它將我輕鬆的引入了自動化測試的世界,它還在每個章節的後面提供了很多連結和文件資料,大都可以在網上搜索到和開啟。配合這些資料的學習,更深一步的理解了自動化測試的本質。
3.《自動化測試最佳實踐》
這本書對於那些考慮、實施、使用、管理測試自動化的人來說是無價之寶。測試人員、開發人員、自動化人員以及自動化架構師、測試經理、專案經理、分析師、QA專家和技術總監都可以從本書受益。
4.《Python自動化測試實戰》
實戰性很強的一本書,很適合學習自動化測試的同學看。
程式語言與開發技能
1.《Python程式設計:從入門到實踐》
這是最基礎的Python入門書籍,相信90%的自學Python的同學都買過這本書。
書中內容共分為兩部分:
- 第一部分:基礎知識。本部分從搭建Python程式設計環境講起;然後,介紹資料型別、資料結構及其操作、函式、類;最後,介紹了檔案和異常處理、測試。這部分真的非常詳細,無論是資料結構的操作,還是案例練習。
- 第二部分:專案。本部分介紹了外星人入侵遊戲、資料視覺化、web應用程式三個專案。說實話,這部分更適合開發的同學學習,不太適合資料分析同學。
2.《Python 核心程式設計(第三版)》
這本書適合具有一定經驗的Python開發人員閱讀。總共分為3部分。第1部分為講解了Python的一些通用應用,包括正則表示式、網路程式設計、Internet客戶端程式設計、多執行緒程式設計、GUI程式設計、資料庫程式設計、Microsoft Office程式設計、擴充套件Python等內容。第2部分講解了與Web開發相關的主題,包括Web客戶端和伺服器、CGI和WSGI相關的Web程式設計、Django Web框架、雲端計算、高階Web服務。第3部分則為一個補充/實驗章節,包括文字處理以及一些其他內容。
3.《Java程式設計思想(第4版)》
從Java的基礎語法到最高階特性(深入的面向物件概念、多執行緒、自動化專案構建、單元測試和除錯等),本書都能逐步指導你輕鬆掌握。
4.《Python程式設計師面試演算法寶典》
這本書是一本講解程式設計師面試筆試演算法的書,程式碼採用Python語言編寫,書中除了講解如何解答演算法問題以外,還引入了例子輔以說明,讓讀者更容易理解。
App測試相關
1.《移動app測試實戰》
這本書對於APP的測試覆蓋得很全面,包括最基礎的功能測試、介面自動化和UI自動化、效能測試、專項測試、持續整合和質量管理等。
並且由於作者是國內頂尖網際網路大廠的員工,書中介紹的測試解決方案,都在大廠得到應用,實用性很強。
2.《騰訊Android自動化測試實戰》
本書主要介紹了一些主流的Android自動化測試工具(框架),包括 Robotium、Monkey、UIAutomator、Appium 等。
另外也包含了其他的一些具體的案例,例如:視訊自動化測試、手機耗電量測試等等。
3.《大話移動 App 測試 2.0》
這本書並非是《大話移動App》的加強版或者擴充套件版,可以說是完全的一本全新的書。
作為一名移動網際網路的測試從業人員,需要正確的三觀、強大的“武功招式”(測試技術)和雄厚的“內力”(更快的學習能力),而本書恰到好處地結合了這三點。
網路知識
1.《圖解HTTP》
這本書的特色為在講解的同時,輔以大量生動形象的通訊圖例,更好地幫助讀者深刻理解HTTP通訊過程中客戶端與伺服器之間的互動情況。
2.《圖解TCP/IP》
這是一本圖文並茂的網路管理技術書籍,旨在讓廣大讀者理解TCP/IP的基本知識、掌握TCP/IP的基本技能。
書中講解了網路基礎知識、TCP/IP基礎知識、資料鏈路、IP協議、IP協議相關技術、TCP與UDP、路由協議、應用協議、網路安全等內容,引導讀者瞭解和掌握TCP/IP,營造一個安全的、使用放心的網路環境。
3.《TCP/IP詳解 卷1協議》
是一本完整而詳細的TCP/IP協議指南。描述了屬於每一層的各個協議以及它們如何在不同作業系統中執行。
介面測試
1.《Web介面開發與自動化測試》
基於Python語言以介面測試為主線,以Web開發為切入點,全面介紹了Web介面開發與自動化測試過程中使用的相關技術。
2.《介面自動化測試持續整合》
本書提到的“持續整合”、“一鍵操作”、“儘可能頻繁、儘可能早、儘可能自動化”,這些概念和實踐,是任何工程化產品都在追求的終極目標。
此書不僅介紹What(概念和流程),還說明Why、How,對實踐中的關鍵點,甚至推薦了一些有效做法。
效能測試
1.《效能測試從零開始LoadRunner入門與提升》
這本書是作為剛剛進入效能測試領域的第一個入門參考書,對於有一定工作經驗的測開人員是一個整體思路融會貫通的一個總結筆記。從軟體架構中的這些方面的一些知識還是講解的比較全的
2.《效能測試進階指南+LoadRunner 11實戰》
是一本基於HP LoadRunner 11工具的指導用書,從效能測試原理到工具使用再到專案實施,全面介紹了效能測試的各個方面。
作業系統相關
1.《鳥哥的Linux私房菜》
這本書是最具知名度的Linux入門書《鳥哥的Linux私房菜基礎學習篇》的最新版,全面而詳細地介紹了Linux作業系統。
2.《Linux命令列與shell指令碼程式設計大全》
本書針對Linux系統的最新特性進行了全面更新,不僅涵蓋了詳盡的動手教程和現實世界中的實用資訊,還提供了與所學內容相關的參考資訊和背景資料。通過本書的學習,你將輕鬆寫出自己的shell指令碼。
資料庫
1.《MySQL 必知必會》
書中從介紹簡單的資料檢索開始,逐步深入一些複雜的內容,包括聯結的使用、子查詢、正則表示式和基於全文字的搜尋、儲存過程、遊標、觸發器、表約束,等等。通過重點突出的章節,條理清晰、系統而扼要地講述了讀者應該掌握的知識,使他們不經意間立刻功力大增。
2.《MySQL 是怎麼執行的》
這本書含有很多圖,是小白學習 MySQL 底層知識的最佳書籍。對MySQL的底層執行原理進行了介紹,內容涵蓋了使用MySQL的同學在求職面試和工作中常見的一些核心概念。
3.《高效能 MySQL》
是高階學習書籍,內容覆蓋MySQL系統架構、設計應用技巧、SQL語句優化、伺服器效能調優、系統配置管理和安全設定、監控分析,以及複製、擴充套件和備份/還原等高階主題。
4.《Redis 開發與運維》
本書不要求讀者有任何Redis使用經驗,對入門與進階DevOps的開發者提供有價值的幫助。主要內容包括:Redis的安裝配置、API、各種高效功能、客戶端、持久化、複製、高可用、記憶體、哨兵、叢集、快取設計等,Redis高可用叢集解決方案,Redis設計和使用中的問題,最後提供了一個開源工具:Redis監控運維雲平臺CacheCloud。
《軟體測試用例設計》
《軟體測試設計》針對軟體測試人員在測試設計過程中面臨的各種問題,提出了“問題驅動的軟體測試設計”方法。該方法將軟體測試設計技術、測試設計中面臨的問題和專案測試實踐經驗緊密結合,詳細闡述了測試人員應該如何有效地開展軟體測試設計活動。
《Web 測試指南》
本書主要講述如何進行高效、高質量的Web測試。全書分為五個部分,第一部分介紹測試的基本概念和測試理論,引導讀者進入Web測試領域;第二和第三部分分別講述Web應用的客戶端測試和服務端測試;第四部分介紹專業測試人員必備的素質和技術,重點闡述測試計劃和設計;最後一部分是測試的相關知識參考。
《Web安全測試》
包括了從觀察客戶端和伺服器之間的訊息到使用指令碼完成登入並執行Web應用功能的多階段測試。在《Web安全測試》的最後,你將能夠建立精確定位到Ajax函式的測試,以及適用於常見懷疑物件(跨站式指令碼和注入攻擊)的大型多級測試。
《精通軟體效能測試與LoadRunner實戰》
對測試職業發展很有幫助,如果職業發展停滯可以讀一下這本書。
《捉蟲日記》
從實踐角度介紹安全漏洞,描述了作者在過去幾年裡怎樣發現漏洞、怎樣利用漏洞來攻擊以及開發商如何修復,旨在為開發人員提醒,為漏洞研究領域的工作人員提供工作思路。
《用例分析技術》
本書從多個不同的角度觀察用例,展示用例如何有助於專案的體系結構設計,進度安排,需求分析,測度和驗證,特別從使用者的角度觀察整個系統,討論諸如邊界,介面和界定範圍等問題。
《iOS測試指南》
專注於 iOS 測試領域的書。其中重點講述了各個測試階段 的具體實踐方法,並且通過持續整合串聯了各個測試階段的活動。本書中所有的測試 實踐並非紙上談兵,而是出自於筆者實際工作中的探索和實踐。在測試例項上有一定 的簡化,是為了脫離複雜的業務。本書的重點在於對方法的介紹。
適合有一定技術功底的測試工程師;有一定經驗的移動測試工程師;iOS 開發工程師;測試技術愛好者。
無論是新手初級測試還是大佬級別的測試,都可以多瀏覽以上書籍,從中尋找到技術解決方案和靈感。其中書籍的電子版我這裡有幾本,我都放在了群檔案裡,你們通過上拉至公告處檢視
如何提升自己?
當然說,除了一些經典的書籍,也有一些建議給到測試在職的人員,幫助你們快速提升:
1、堅持少做重複性工作,提升自己的工作的幸福感和成就感,把單純的測試工作變成專案質量保證工作。
2、掌握一門程式語言,Python或者Java都行,會了Python之後會靈活一些,能夠寫一些指令碼或者小型的應用,將來在面對測試和運維之間的區域時,去部署和維護一些web應用和測試伺服器,Python就會變得非常有用。如果是掌握Java,在面對Java寫的測試框架的時候,能夠很好的處理好測試與開發交叉的領域。在面試過程中,大概率也會碰到問你jvm的問題。
3、計算機的理論知識,這個簡單一些,比如各層的協議,測試現在最常接觸到的可能是HTTP,TCP,IP,抓包工具如fiddler,wireshark,tcpdump之類的,長遠考慮,你的工作會延伸到測試和運維中間的領域,那麼就需要了解更多的網路知識和常用命令。
4、作業系統上,主要還是為了將來能夠解決測試和運維交叉的領域,熟悉Linux基本的操作和命令來維護好自己的測試環境,另外shell指令碼、ios和Android系統(移動APP測試)都可以接觸;
5、前端基礎知識,目的是解決測試和開發的交叉領域,bootstrap、css、html、javascript、jquery,如果你要做一些web自動化測試指令碼的話,這些前端的基礎對你很重要。如果你是一點web測試都不做,那這些你可以先放一放。
6、資料庫,效能測試很重要,介面測試也要用到。