-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Python Web自動化測試設計與實現

( 簡體 字)
作者:陳曉伍類別:1. -> 程式設計 -> Python
譯者:
出版社:清華大學出版社Python Web自動化測試設計與實現 3dWoo書號: 50855
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:4/1/2019
頁數:360
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302519294
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

為什么要寫這本書
作為一名測試人員,從工作的第一天開始我就對自動化測試產生了獨特的興趣。而最初的理由也很簡單,就像開發人員不愿意只寫業務代碼一樣,測試人員也不希望只局限于手動測試。自動化測試對于當時還是新手測試人員的我而言,完全可以用“高大上”來形容。自此,我便在學習和實踐自動化測試的道路上越走越遠。
而隨著計算機技術及互聯網的發展,如今作為一名測試人員,不僅要掌握針對于業務流程的手動測試方法和理論;還要具備一定的自動化、性能的測試能力。甚至于在找工作時會寫腳本,會使用自動化工具進行測試已經成為測試人員的一種標配。本書總結了作者在項目實踐中的多年工作經驗,梳理了自動化測試需要掌握的一些基本技能和知識,幫助初級測試人員快速掌握目前常用的自動化測試手段和方法,提高自身的綜合技能水平。
自動化測試對于測試新人而言,往往會理解為手動功能測試的自動化實現。比如:UI自動化測試。但從廣義概念來看,自動化測試還要包括:接口自動化、性能自動化、白盒自動化、安全自動化、自動化工具/框架/平臺等一系列可以通過開發腳本來實現的測試。而本書所講到的自動化測試內容包括:UI自動化、自動化框架、接口自動化、自動化工具、自動化持續集成等相關知識。目的是給讀者打開一個通向更加廣泛的自動化測試之門。
此外,對于一些剛開始接觸自動化測試的人員而言,自動化測試幾乎等同于高效測試。其實現項目中并沒有想象的那么美好,自動化測試需要根據不同的場景和需求來定制不同的自動化測試方案。本書最開始的部分就介紹了自動化測試的方法論和最佳實踐,避免測試新人誤入自動化測試的“陷阱”。
另外,本書也是一本Python的基礎學習教程,作為Python的鐵桿粉絲,自然也希望能夠將Python語言最大程度地推廣到自動化測試領域中來。正所謂“人生苦短,我用Python!”
本書特色
1. 附帶讀書興趣小組,方便學習溝通
為了便于讀者相互溝通,提高學習效率,作者專門為本書建設了讀書興趣小組,讀者可以通過登錄testqa.cn并加入seleniumbook小組來學習和交流。另外本書中的源碼包也會在這個小組中支持下載。
2. 涵蓋多種自動化測試方法
本書涵蓋自動化測試中使用到的多種測試方法,除了UI的自動化,還包括接口自動化,測試工具開發、CI的使用。
3. 對Selenium工具的歷史和原理進行了分析與說明
除了對于Selenium工具,提供相關接口的實例代碼外,還介紹了Selenium的歷史和基本原理。使得讀者在學習的過程中,知其然也知其所以然。另外對Selenium IDE的操作和使用也做了較為詳盡的說明,使得初學者也可以快速上手和使用Selenium進行自動化測試的
實踐。
4. 介紹詳盡框架的開發
本書除了介紹Selenium的一些基本接口之外,還介紹了在基于Selenium的情況下,如何搭建可用性較高的測試基礎框架。使用分層架構、數據驅動、業務解耦、功能封裝等方式,讓UI自動化測試不再是“可遠觀而不可褻玩”的技術。
5. 總結自動化最佳實踐
本書的開頭并沒有一上來就開展技術的介紹,而是先從方法論和最佳實踐開始。目的是讓讀者先理解“道”,再學習“術”。這樣才能更好地學習和真正地利用自動化的相關測試技術。避免測試新人誤入自動化的“陷阱”。
6. 提供基礎的Python教程
除了介紹自動化相關的測試技術,本書還涵蓋了書中其他地方需要用到的Python編程基礎知識。為的是讓讀者只需一本書就可以開始步入自動化測試的行列。
7. 提供完善的技術支持和售后服務
本書提供了專門的技術支持郵箱:five3@163.com。讀者在閱讀本書過程中有任何疑問都可以通過該郵箱獲得幫助。
讀者對象
希望學習自動化測試技術的測試人員;
希望提升自身技術的測試人員;
希望了解自動化測試技術的開發人員;
其他希望利用自動化技術的相關人員。
本書主要內容
本書分為三大部分。
第一部分為方法論,主要介紹入門自動化測試之前需要了解的相關方法論和最佳實踐。
第二部分為Selenium介紹,著重講解Selenium的歷史、原理、IDE和接口的使用,同時還介紹了基于Selenium的自動化框架搭建。
第三部分為工具開發介紹,通過一步步深入的介紹帶領讀者進行接口測試工具、mock測試工具的開發,同時集成到Web服務中。
除了這三個主要部分之外,還會有一些其他的自動化相關知識,各自分散在不同的章節中。比如:CI持續集成的使用,基礎環境的搭建,Python語言的學習等。如果你是一名初學者,建議從第1章開始學習。
閱讀本書的建議
測試新手讀者,建議從第1章順次閱讀。
有一定Python基礎的讀者,可以根據實際情況有重點地選擇閱讀各個技術要點。
在學習框架之前,需要保證對Selenium和Python語法章節有了一定的掌握;先通讀一遍有個大概印象,然后將每個知識點的示例代碼都在開發環境中操作一遍,加深對知識點的印象。
結合github中的完整代碼來實際操作,這樣理解起來就更加容易,也會更加深刻。
進一步學習建議
當您閱讀完本書后,相信已經掌握了Python Web自動化測試的基本知識。但如果還要更進一步深入下去,還必須要進一步地掌握Python的開發技術,以及加深對自動化測試的理解。掌握了扎實的技術能力之后,針對項目中需要提煉的流程和事務,進行分析并有針對性地優化。做好自動化項目最重要的一點就是:結合實際業務需求,否則可能就成為“空中
樓閣”。
此外還需要學習性能、白盒、安全等相關測試技術,結合自動化來提升這些測試過程中的效率。比如:測試數據的準備、mock系統的開發、代理監聽、信息采集等。
如果希望在Python編程方面有更多的提升,推薦去閱讀Python核心編程方面的書籍,而對于項目中的效率提升則需要自己更多地去實踐、學習和思考。
勘誤和支持
由于作者的水平有限,編寫時間倉促,書中難免會出現一些錯誤或者不準確的地方,懇請讀者批評指正。為此,特意創建一個在線支持與應急方案的二級站點http://www.testqa.cn/seleniumbook。你可以將書中的錯誤發布在Bug勘誤表頁面中,同時如果你遇到任何問題,也可以訪問seleniumbook小組頁面,我將盡量在線上為讀者提供最滿意的解答。書中的全部源文件除可以從github(http://github.com/five3)下載外,還可以從testqa站點下載,我也會及時更新相應的功能。如果你有更多的寶貴意見,也歡迎通過清華大學出版社網站(www.tup.com.cn)與我們聯系,期待能夠得到你們的真摯反饋。
致謝
首先要感謝我的愛人、岳母,是她們的辛苦付出和支持才讓我有時間來進行本書的寫作。
感謝出版社的編輯老師,在這一年多的時間中始終支持我的寫作,你的鼓勵和幫助引導我能順利完成全部書稿。
還要感謝職業生涯中給予過我幫助的同事們,沒有你們的信任和無私的幫助就沒有這本書。
最后感謝我的爸爸、媽媽、哥哥、姐姐,感謝你們將我培養成人,并給予我的一切!
謹以此書獻給我最親愛的兒子,希望他一直快樂成長!
內容簡介:

本書是資深測試開發專家的經驗結晶,由淺入深地闡釋了Web自動化測試的相關技術,包括Web UI自動化測試、API自動化測試及測試相關的基礎開發。通過學習本書,讀者可以基本掌握Web測試相關的大部分技術點。本書是測試相關人員必備的技術指導。書中每個技術點都有示例代碼,理論與實踐相結合的方式能夠使讀者快速理解Web自動化測試。
本書循序漸進地講解了Web自動化測試的各項知識點,使任何層級的讀者都能從中受益。緒論部分介紹自動化方面的基礎知識,幫助讀者少走彎路,正確學會自動化測試。第1~3章介紹Selenium、Python以及Web UI自動化的相關基礎知識。第4章和第5章介紹Selenium IDE和Selenium常規對象接口。第6章介紹Web UI自動化特殊場景處理。第7章介紹UnitTest單元測試框架。第8章介紹分層框架設計與實現。第9章介紹測試腳本的部署。第10章和第11章介紹Web API相關基礎知識。第12章介紹通過Python發送HTTP請求。第13章介紹API工具的設計與實現。第14章介紹Web服務的集成工作。第15章介紹HTTP Mock的開發。
本書適合Web測試人員、Web自動化人員、Web開發人員等初中級讀者以及希望使用Python作為編程語言的軟件測試工程師參考。
目錄:

緒論1
第1章Selenium基礎9
1.1Selenium的歷史和分支9
1.2Selenium的特點12
1.3Selenium名詞說明12
1.3.1SeleniumRC12
1.3.2SeleniumServer12
1.3.3SeleniumWebDriver13
1.3.4SeleniumClient13
1.3.5SeleniumGrid13
1.3.6SeleniumIDE13
1.4Selenium基本原理14
1.5Selenium環境搭建15
1.5.1Windows環境搭建16
1.5.2Ubuntu環境搭建22
1.5.3MacOS環境搭建26
1.6Selenium調用不同瀏覽器28
1.6.1調用Firefox瀏覽器28
1.6.2調用Chrome瀏覽器29
1.6.3調用IE瀏覽器30
1.6.4IE瀏覽器安全機制設置30
1.7SeleniumDocker的使用31
1.7.1Docker環境安裝32
1.7.2SeleniumDocker鏡像下載35
1.7.3Docker下運行Selenium腳本36
1.8Selenium3說明38
1.8.1不再支持SeleniumRC38
1.8.2僅支持JDK1.8.0以上版本38
1.8.3SeleniumIDE支持Chrome插件38
1.8.4FireFox需要安裝獨立驅動38
1.8.5僅支持IE9.0以上版本39
1.8.6支持微軟的Edge瀏覽器39
1.8.7支持官方的SafariDriver39
第2章Python編程基礎41
2.1基礎語法41
2.1.1Python語句執行41
2.1.2Python語法格式42
2.1.3Python變量與類型44
2.1.4Python運算符與表達式47
2.2控制語句52
2.2.1if-else語句52
2.2.2for語句53
2.2.3while語句53
2.2.4continue語句54
2.2.5break語句54
2.2.6pass語句55
2.3模塊化55
2.3.1函數55
2.3.2類與實例59
2.3.3模塊文件61
2.3.4包62
2.4基礎數據結構63
2.4.1列表63
2.4.2元組64
2.4.3字典65
2.4.4遍歷數據67
2.5輸入/輸出67
2.5.1命令行輸入/輸出67
2.5.2文件輸入/輸出69
2.6內置函數70
2.6.1id函數70
2.6.2dir函數71
2.6.3help函數71
2.6.4type函數72
2.6.5isinstance函數72
2.6.6zip函數72
2.6.7filter函數72
2.6.8map函數73
2.6.9reduce函數73
2.7異常73
2.7.1異常捕獲73
2.7.2自定義異常75
2.8魔法特性76
2.8.1列表推導式76
2.8.2迭代器77
2.8.3生成器78
2.8.4閉包79
2.8.5裝飾器79
2.8.6內省機制83
2.9并發任務86
2.9.1多進程86
2.9.2多線程91
2.9.3協程93
2.10編解碼96
2.10.1源碼文件編碼97
2.10.2解釋器默認編碼98
2.10.3外部文件編碼99
2.10.4數據庫編碼100
2.10.5編解碼函數100
第3章WebUI自動化基礎102
3.1HTML與DOM簡介102
3.2學習元素定位方式104
3.3CSS定位技術106
3.4使用工具幫助定位106
3.4.1IE的DeveloperTool107
3.4.2Firefox的Web開發者工具107
3.4.3Chrome的開發者工具108
3.4.4Firefox的XPathChecker插件108
3.4.5Chrome的XPath工具109
3.4.6Firefox的CSS插件109
3.4.7Chrome的CSS工具110
3.4.8Firefox的WebDriverElementLocator插件110
3.5Selenium中進行元素定位112
3.5.1獲取一個定位元素112
3.5.2獲取一組定位元素113
3.5.3匹配非第一個元素114
第4章SeleniumIDE115
4.1SeleniumIDE安裝115
4.1.1Firefox安裝115
4.1.2SeleniumIDE在線安裝116
4.1.3SeleniumIDE本地安裝117
4.2SeleniumIDE功能介紹120
4.2.1SeleniumIDE窗口120
4.2.2菜單欄121
4.2.3地址欄123
4.2.4工具欄124
4.2.5用例管理區124
4.2.6用例腳本開發區125
4.2.7信息輸出區126
4.3SeleniumIDE使用126
4.3.1SeleniumIDE錄制與回放126
4.3.2SeleniumIDE腳本編輯128
4.3.3SeleniumIDE元素定位138
4.3.4SeleniumIDE匹配模式141
4.3.5SeleniumIDE腳本轉換143
第5章Selenium常規對象接口148
5.1瀏覽器對象操作148
5.1.1查找元素方法148
5.1.2瀏覽器窗口方法149
5.1.3Cookie處理方法149
5.2WebElement對象操作150
5.3文本框對象操作152
5.4按鈕對象操作152
5.5下拉列表對象操作153
5.6鏈接對象操作154
第6章WebUI自動化特殊場景處理156
6.1處理多窗口測試場景156
6.2處理瀏覽器彈框場景158
6.2.1Alert對象及方法158
6.2.2優雅地處理Alert彈框159
6.3Selenium進行鍵盤鼠標操作160
6.3.1鍵盤操作160
6.3.2鼠標操作161
6.4非Web控件的操作實現162
6.5Selenium執行JavaScript及操作DOM164
6.6Selenium截屏操作165
第7章UnitTest單元測試框架167
7.1常規使用方式167
7.2測試套件使用169
7.3TestLoader的使用170
7.4UnitTest加載流程172
第8章分層框架設計與實現173
8.1數據驅動層174
8.1.1文件存儲175
8.1.2數據庫存儲176
8.2定位符驅動層180
8.2.1本地文件存儲181
8.2.2遠程服務存儲183
8.3頁面操作層185
8.4業務邏輯層190
8.4.1公共業務190
8.4.2常規業務191
8.5結果驅動層193
8.5.1日志Logger記錄193
8.5.2自定義Logger記錄199
8.5.3郵件通知結果203
8.6異常處理層204
8.6.1程序異常處理204
8.6.2斷言異常處理208
8.6.3自定義異常類209
第9章測試腳本部署211
9.1使用SVN管理測試腳本211
9.1.1SVN服務安裝212
9.1.2SVN客戶端安裝217
9.1.3SVN使用簡介219
9.1.4SVN操作規范223
9.2遠程執行用例場景224
9.3SeleniumGrid模塊及搭建228
9.3.1SeleniumGrid環境搭建229
9.3.2SeleniumGrid使用232
9.4持續集成的自動化測試232
第10章WebAPI介紹236
10.1HTTP簡介236
10.1.1HTTP請求報文237
10.1.2HTTP響應報文239
10.2WebAPI介紹240
10.3RESTAPI介紹241
第11章WebAPI自動化基礎243
11.1正則表達式模塊學習243
11.1.1字符搜索244
11.1.2字符替換和分割246
11.1.3表達式修飾符246
11.1.4其他事項247
11.2XML讀寫模塊的學習248
11.2.1讀取XML文檔249
11.2.2寫入XML文檔252
11.3JSON模塊的學習253
11.3.1JSON串生成254
11.3.2JSON串解析256
11.4MD5、BASE64編解碼256
11.4.1BASE64編解碼257
11.4.2MD5加密258
11.4.3數據序列化259
第12章Python發送HTTP請求261
12.1HTTP請求發送261
12.1.1requests模塊安裝261
12.1.2發送GET請求262
12.1.3發送POST請求264
12.1.4發送multipart/form-data請求265
12.1.5發送其他類型請求266
12.2HTTP請求認證266
12.2.1HTTPBasicAuth267
12.2.2HTTPDigestAuth267
12.2.3OAuth認證268
12.2.4自定義認證268
12.3URL的編解碼269
12.4HTTP響應內容驗證271
12.4.1狀態碼驗證271
12.4.2響應頭驗證272
12.4.3響應體驗證273
12.5多線程發送請求276
12.5.1函數式多線程276
12.5.2類繼承式多線程279
第13章API工具設計與實現282
13.1最簡單的API工具282
13.1.1請求方法設置284
13.1.2請求頭設置288
13.1.3支持文件上傳289
13.1.4簡單結果驗證292
13.2測試數據讀取293
13.2.1測試數據格式293
13.2.2數據存儲方式294
13.2.3實現數據讀取296
13.3測試數據用例化299
13.3.1用例基本信息299
13.3.2用例套件信息301
13.3.3用例模板信息302
13.4測試流程控制304
13.4.1鉤子函數接口設計305
13.4.2鉤子函數接口調用307
13.4.3鉤子函數接口實現309
13.5測試結果驗證311
13.5.1完全匹配311
13.5.2內容包含312
13.5.3正則匹配313
13.5.4JSONPath313
13.6測試數據記錄315
13.6.1結果記錄315
13.6.2日志記錄317
第14章集成為Web服務319
14.1Web服務簡介319
14.1.1Web框架選擇320
14.1.2DEMO實現321
14.1.3框架開發學習322
14.2Web上啟動用例執行330
14.2.1運行參數接收332
14.2.2測試請求處理335
14.3Web上查看測試結果337
14.3.1任務列表頁338
14.3.2用例結果頁340
14.4持續集成的API自動化測試342
14.4.1用例集保存342
14.4.2用例集執行345
第15章HTTPMock開發347
15.1HTTPMock介紹347
15.2HTTPMock分析348
15.3HTTPMock實現349
15.3.1根據請求URL過濾349
15.3.2根據請求方法過濾350
15.3.3根據請求頭過濾352
15.3.4根據請求數據過濾353
參考文獻356
結束語357
序: