最近總在思考一個問題: 在這些年所從事的軟件技術相關的工作中,沉淀了些什么可以作為經驗講述給后來者?荀子在《勸學》中給出的答案是傳道、授業(yè)、解惑。團隊中每年都會有新人進來,在對新入職員工培訓時,通常會告訴他們快速融入團隊需要掌握哪些知識和解答他們在工作中遇到的問題,F在看來,這算是授業(yè)和解惑了。
勝任一份接口自動化測試工作,首先需要熟悉的就是協議。這就相當于接口測試的心法,再配合被測軟件使用場景具體的業(yè)務知識,基本就可以做接口測試了。本書重點介紹了HTTP相關的基礎知識,對WebService、WebSocket、gRPC也有所涉及。接口測試工具在這個過程中所充當的就是工具的本義。就像框架的存在是為了提升工作效率。從這個角度理解,本書中所涉及的幾款接口測試工具,其實就是工具化的接口測試框架。
作為一名IT從業(yè)者,筆者的職業(yè)生涯里接觸了很多編程語言、工具、框架,其中的一個或者幾個在一段特定的時間里會成為工作中的主要內容。隨著時間的推移,有些技術會更迭,有些工具會升級(或者被新的工具所取代),有時甚至因為工作的緣故某些特定的技術和工具被束之高閣。面對新的技術和工具,需要具有快速學習和上手的能力。這也是技術崗在招聘時很在意學習能力的原因吧,因此在本書的寫作過程中,筆者有意識地將自己學習技術和工具的方法融入具體技術的講解中,希望這種學習方法能夠幫助更多后來者。
筆者現在主要是帶團隊做CNAS、CMA軟件相關的第三方評測工作,同時樂于將自己工作中所沉淀下來的技術分享出來。本書是筆者的第2本技術類作品,不足之處請多包涵。如果在學習接口自動化測試技術時,從本書中得到了一些幫助,則是筆者的榮幸。
本書目標讀者
本書未涉及Python基礎的講解,因此在學習本書前需要有一些Python基礎知識。書中內容適合大多數有意學習或提升接口自動化測試技能的讀者。目標讀者可以概括為以下幾類。
(1) 對軟件接口自動化測試技術感興趣的初學者,跟著書中的順序學習即可。
(2) 接口測試工程師,通過本書系統化自己所掌握的自動化測試技術。
(3) 性能測試工程師,通過本書的學習可以手工編寫和優(yōu)化性能測試腳本。
(4) 高等院校測試專業(yè)或測試培訓班的學生,提升自己的崗位競爭力。
(5) 有意愿提升自己接口測試技術的從業(yè)者或準從業(yè)者,學習永遠不晚。
本書的特色
本書是一本適合自學的接口自動化測試技術參考書,主要有以下幾個特色。
(1) 涵蓋Postman、JMeter、Apifox等主流接口測試工具。
(2) 以實例代碼驅動接口測試知識點的講解。
(3) 基于Requests unittest Python架構的接口測試框架講解。
本書主要內容
基礎篇(第1~5章): 本篇主要介紹接口自動化測試行業(yè)現狀,基礎環(huán)境的搭建與配置,主流接口測試工具的介紹及下載并安裝; HTTP基礎知識; Fiddler抓包工具的使用,常用命令,基于手機端App抓包及實用技巧; 第三方接口工具包Requests的初級使用。
工具篇(第6~8章): 本篇主要介紹Postman的基本使用方法及Newman的使用; Apifox接口測試及接口文檔的管理,HTTP、WebSocket、WebService和gRPC接口實例; JMeter接口測試流程、斷言、輸出和案例。
框架篇(第9~14章): 本篇主要介紹數據驅動在測試框架中的應用; 基于數據驅動模式的自動化框架實現及框架實戰(zhàn)案例; 持續(xù)集成的部署與運行。
掃描封底的文泉云盤防盜碼,再掃描目錄上方的二維碼可下載本書源代碼。
致謝
首先要感謝清華大學出版社趙佳霓編輯,你的寬容和責任心讓本書得以順利出版。還要感謝我的恩師趙慎龍老師和鄧祖華老師對我的幫助。最后要感謝我的妻子在本書寫作期間給予我的支持。感謝一路走來所有關心和幫助過我的人。
胡勝強2024年10月