-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
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書號
詳細書籍分類

Selenium自動化測試之道

( 簡體 字)
作者:Ping++ 測試團隊類別:1. -> 程式設計 -> 網路爬蟲
譯者:
出版社:清華大學出版社Selenium自動化測試之道 3dWoo書號: 48027
詢問書籍請說出此書號!

缺書
NT售價: 295

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

譯者序:

前言:

寫一本關于Selenium自動化測試的工具書,一開始我是拒絕的。直到現在,我仍然認為工具書不足以道盡測試的奧妙。學習Selenium最好的途徑是啃官方文檔和源碼,從最開始的 Selenium RC到WebDriver,再到移動測試Appium,Selenium一直在快速、持續地發展和變化著。等讀者看到這本書的時候,很可能某些問題已經有了更好的解決方案,或者書中的代碼已經不能直接運行。
而最終,我還是動筆了。因為我還有另一個觀點:“自動化測試”不是某一家公司或者團隊組織需要考慮的問題,它應該是測試同行們的必經之路,是日常測試工作的手段之一。而初學者在一開始難免會有畏難情緒,又不知如何構建知識體系。于是,將所思所得分享出來,或許可以幫助初學者盡快地度過那段“破冰期”。
本書的組織方式
市面上Selenium的資料很多,談論測試自動化的也很多。但脫離了工具和技術,去談方法論,難免讓人覺得空洞;而沒有方法論的東西,只談工具和技術,難免是“一葉障目,不見泰山”。本書嘗試在梳理技術知識的同時,討論測試自動化的方法論。
第1章主要探討測試價值觀,闡述編者對自動化測試的基本觀點和認識。
第2章是Selenium入門內容,介紹了Selenium的發展,涉及Selenium IDE、Selenium WebDriver和Selenium Grid。
第3章重點介紹了Selenium WebDriver的使用。不是簡單羅列Selenium WebDriver API,還包括不同WebDriver對象、不同頁面元素的處理思路。
第4章介紹了自動化測試框架的設計,包括線性、模塊化、數據驅動和關鍵字框架4種類型。
第5章介紹了HTML 5元素的處理。Selenium還未對某些HTML 5元素的操作進行封裝,因而需要利用JavaScript來解決問題。讀者將在這一章開拓視角,了解更多的Selenium應用場景。
第6章介紹了移動App的測試框架——Appium。基于前面幾章對Selenium原理與操作的了解,讀者會在這一章了解iOS與Android App自動化測試腳本的寫法。
第7章介紹了行為驅動開發(BDD)模式。通過這一章,希望讀者能體會到做好自動化測試不僅在于工具的掌握和框架的使用,還需要考慮測試用例的管理、手動測試用例如何與自動化腳本關聯,甚至與業務部門的溝通等問題,其中幾個BDD框架的示例為讀者提供了解決問題的思路。
第8章介紹了持續集成工具Jenkins的使用,希望通過這一章能為讀者帶來測試流程方面的思考。Jenkins 可以讓測試腳本的執行、報告的展示變得簡單高效。
本書的內容均是由Ping++的一線測試人員編寫的。第2章由王紅興、周淼淼編寫,第4章由徐克亮編寫,其余章節由吳子騰編寫。
本書的特色
本書的特色主要體現在以下3個方面:
第一,在理論觀點上,本書在開篇就闡明了編者對于“質量與自動化測試的關系”,“自動化測試與白盒測試的關系”等話題的理解。其實 Selenium 等各種自動化測試工具上手并不難,但相信讀者在閱讀過程中并不僅僅只是想了解一種工具,而是想獲得如何實施自動化測試的思路。正所謂,測試技術或工具只是“指月之手”,我們追求的是“月亮”,是如何放心地迭代,快速地交付高品質的產品。
第二,在學習視角上,本書從Selenium工作原理、測試腳本的組織方式——開始講解,再由Web自動化腳本的編寫延伸到HTML 5元素、App測試對象的識別等。章節的內容設置與當今企業,尤其是互聯網公司所需的UI自動化測試技術環環相扣,歸納總結了可能遇到的難點以及解決問題的思路。
第三,在技術實施上,突出了需要向團隊傳播質量意識與測試自動化實踐相結合。本書介紹的行為驅動開發(BDD)與持續集成工具Jenkins都是需要團結整個研發團隊,甚至是相關的業務部門,才能將這些理念發揮至最佳。當然,即便這些概念在組織推進過程中存在困難,測試人員也可以通過了解這些工具和技術,對研發過程改進這一話題進行更加深入的思考。
考慮到本書的目標和定位,對于沒有掌握任何一門編程語言的讀者而言,或許會造成閱讀門檻。另外,本書涉及多類界面對象的識別和操作、多種測試腳本的寫法、多個測試框架的使用。然而在實際工作中,界面操作的自動化僅僅是分層測試策略中的一部分,并不能代表全部的自動化工作。但為了便于從整體上把握和安排內容,編者還是以Web測試自動化作為本書的主要架構。這樣,相比單一地通過某個系統或產品來整體介紹自動化測試方面的研究,書中各章節的內容顯得在體系性上有所欠缺。
目標讀者
本書主要面向的讀者是具備編程基礎,缺乏自動化測試經驗,希望快速、系統地了解Selenium,從而進一步做好UI測試自動化的工程師。本書不僅是為測試人員而寫的,它還適用于對軟件測試有興趣的在讀大學生以及希望了解測試技術的開發人員。
全書綜合了Selenium實踐過程中的方方面面,涉及腳本編寫、框架選型、開發模式等各個領域的討論。雖然示例代碼分為Java與Python兩種語言,但并不會影響閱讀,書中對示例代碼進行了詳盡的文字解讀。Python 代碼適用于2.7.10版本。
如何閱讀本書
本書的前3章是全書內容的基礎,需要首先閱讀。在掌握了前3章之后,讀者可以按照任意順序閱讀后續章節。既可以順序瀏覽,概觀Selenium自動化測試實踐,也可以選擇性地閱讀自己感興趣的章節。
我們學習任何測試工具的最終目的不在于掌握工具,而在于如何利用工具更好地為自動化測試服務。自動化測試也只是產品質量工作中的一部分。因此,不要沉迷于“術”,而忘卻了“道”。在閱讀過程中,讀者一方面需要積極實踐,掌握測試腳本的編寫方法,另一方面需要積極思考,如何在自己所在的工作中合理應用起來。練習與反思,才能將本書的效果發揮至極致。
勘誤和支持
致謝
首先要感謝清華大學出版社提供了這樣一個創作平臺。其次,感謝那些提供了寶貴建議的朋友們。雖然最終編寫這本書的是Ping++的測試團隊,但還有很多同事和好友為本書提供了寶貴的意見。感謝李雨洪、方雷、孫兵兵、葉波光、翁旭鋒、李響、左文婭、趙海林、付敏芝、史子飛提出的問題和反饋,感謝我素未謀面卻志同道合的好友劉琛梅以及我的老師姜曉東在百忙之中為本書寫了推薦序。
最后,我要感謝我的家人。感謝我的父母,尤其是我的母親,培養了我的閱讀和學習習慣。感謝我的公公婆婆,他們的辛勤付出讓我在寫書的過程中沒有后顧之憂,不用擔心兒子的生活起居。我還要感謝我的兒子塏興,你的笑容是我的能量。感謝你們伴我前行。





Ping++測試團隊 吳子騰
上海 張江高科
2017年9月10日
內容簡介:

本書以Selenium的使用為主線,展現了UI自動化測試的各種實踐過程,引導讀者思考如何基于Selenium做好UI自動化測試。示例代碼采用Python和Java,全書共8章,第1章分析討論了自動化測試的意義,旨在使讀者對自動化測試有一個較明確的認識;第2、3章詳細介紹了Selenium IDE的命令、Selenium WebDriver API、不同Driver對象以及工作原理,旨在使讀者對Selenium有深入的了解;第4章重點通過代碼演示介紹了不同類型的測試框架;第5、6章是拓寬思路,演示了如何使用Selenium WebDriver結合JavaScript代碼來操作HTML 5頁面的Web Storage、Canvas對象,以及如何使用Appium處理原生App和Web App的頁面對象;第7章著重演示了主流BDD框架Cucumber-JVM、Lettuce、Behave的應用,偏實戰場景,探討了BDD實施過程中需要考慮的種種問題;第8章介紹了測試人員在Jenkins使用過程中的必備知識。本書還提供了所有示例的源碼與素材文件供讀者練習使用,讀者可從網上下載本書資源文件。
本書適用于具有編程基礎,希望系統地了解UI自動化測試的開發或測試人員,以及對自動化測試感興趣的計算機專業學生等。
目錄:

第1章自動化測試的價值觀 1

1.1自動化測試與產品質量的關系 1

1.2自動化并不等同于白盒測試 2

1.3采用自動化還是手工測試 4

1.4如何進行自動化測試 5

1.5學習自動化測試的建議 7

1.6小結 8

第2章Selenium初體驗 9

2.1從一個測試腳本說起 9

2.2Selenium家族 10

2.3SeleniumIDE 12

2.3.1安裝SeleniumIDE 12

2.3.2SeleniumIDE的使用 13

2.3.3場景演練 20

2.4SeleniumWebDriver 37

2.4.1工作原理 37

2.4.2元素定位 38

2.4.3場景演練 41

2.4.4Wait 45

2.4.5常用的斷言 46

2.5SeleniumGrid 47

2.5.1工作原理 47

2.5.2環境搭建 48

2.6小結 52

2.7練習 52

第3章SeleniumWebDriver 53

3.1創建不同的Driver對象 53

3.1.1主流瀏覽器 53

3.1.2Headless瀏覽器 56

3.2常用API概覽 59

3.2.1瀏覽器操作 60

3.2.2ActionChains 61

3.2.3Alert 61

3.2.4By 62

3.2.5DesiredCapabilities 62

3.2.6Keys 63

3.2.7Wait 64

3.2.8execute_script 64

3.2.9switch_to 66

3.3場景演練 66

3.3.1彈出框 67

3.3.2懸浮菜單 71

3.3.3表格 75

3.3.4iframe 79

3.3.5上傳與下載 81

3.4可能遇到的異常 83

3.5小結 88

3.6練習 88

第4章自動化框架 89

4.1線性框架 89

4.2模塊化框架 91

4.3數據驅動框架 94

4.4關鍵字驅動框架 102

第5章HTML5測試 107

5.1WebStorage 108

5.1.1LocalStorage 108

5.1.2SessionStorage 111

5.2ApplicationCache 111

5.2.1獲得ApplicationCache

當前的狀態 112

5.2.2設置網絡連接狀態在線/

離線 113

5.3Canvas 114

5.4Video 116

5.5小結 118

5.6練習 118

第6章移動App測試:Appium 119

6.1認識Appium 120

6.1.1Appium是什么 120

6.1.2Appium與iOS應用 120

6.1.3Appium與Android應用 121

6.2開始使用Appium 122

6.2.1準備工作 122

6.2.2Appium的安裝與啟動 123

6.3原生App測試實踐 128

6.3.1運行ios_simple.py 128

6.3.2運行android_simple.py 133

6.3.3尋找練手App 136

6.4WebApp測試實踐 139

6.4.1使用Chrome開發者工具

查看WebApp元素 141

6.4.2AndroidWebApp的聯機

調試 142

6.4.3iOSWebApp的聯機

調試 144

6.5小結 146

6.6練習 146

第7章BDD:行為驅動開發 147

7.1認識BDD 148

7.1.1BDD的由來 148

7.1.2與TDD比較 150

7.1.3選擇合適的BDD工具 151

7.1.4BDD實施 157

7.2BDD工具的使用 160

7.2.1使用Cucumber-JVM 161

7.2.2使用Lettuce 168

7.2.3使用Behave 175

7.3小結 182

7.4練習 182

第8章Jenkins的使用 183

8.1認識Jenkins 183

8.2Jenkins安裝與啟動 185

8.3任務定制化 188

8.3.1同步源碼 190

8.3.2定時任務 190

8.3.3報告 191

8.4用戶與權限 194

8.5小結 195

8.6練習 195

參考資料 196

序: