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

自動化測試實戰寶典:Robot Framework + Python從小工到專家

( 簡體 字)
作者:周金劍(狂師)類別:1. -> 軟體工程 -> 軟體測試
   2. -> 程式設計 -> Python
譯者:
出版社:電子工業出版社自動化測試實戰寶典:Robot Framework + Python從小工到專家 3dWoo書號: 52441
詢問書籍請說出此書號!

缺書
NT售價: 545

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

譯者序:

前言:

在當今高速發展的移動互聯網+云優先的時代,到處都有不可預知的變化,有的來自客戶需求的變化,有的來自市場環境的變化,這些變化給企業的市場、渠道、產品、服務等各方面都帶來了一系列新的挑戰,每個成功的企業都在培養和打造快速適應這種變化的能力。對于企業的產品研發部門來說,面對著愈發不確定的客戶需求,快速并高質量地完成開發工作,早日上線,盡早收集市場反饋,優化產品和服務,是研發響應市場變化的基本原則。但在追求產品快速交付上線的同時,質量底線是每一個成功的產品都必須要堅守的,這意味著研發團隊在提高產品交付效率的同時要保證產品質量,而要實現這一目標,引入自動化測試是一種行之有效的手段。
準備寫本書之前,其實我的內心還是挺糾結和矛盾的,畢竟最近兩年一直從事研發管理的工作,對技術的鉆研已經無法全身心投入了。最近幾年感受到越來越明顯的一個行業不良現狀:“測試人員能力的兩極分化太過于嚴重。”一類是行業小白,這里說的小白,并不一定指的就是剛畢業或剛跨入這個行業的同學,更多的是指測試思維和測試技術一直處于小白狀態的人。即便是有些工作了很多年的同學,仍然有很多人一直處于手工測試“點點點”的工作狀態,他們不主動或者不愿意去理解業務架構、技術架構,甚至根本沒有想過通過提升自己來改變這種工作狀態。我面試過很多人,這類不求變或者說不求突破的做純手工功能測試的人不在少數。另外一類則是行業大師,這類人是極為稀缺的,也是軟件行業最搶手的一類人。這類人無論從知識的廣度還是深度來說,都可以媲美開發架構師,甚至有些還會超過開發架構師的水平,因為測試工程師作為一個“高危職業”,需要比產品經理(或需求分析師)想得更全面,比開發人員更懂需求,能讀懂甚至能修改開發人員的代碼。這個觀點和《Google測試之道》一書中提到的一條理念很相似,Google對測試工程師的定位是這樣的:“如果一個測試人員的業務能力不比產品經理強,編碼能力沒有研發工程師牛,你怎么能發現他們的問題呢?”這也足以說明,產品的質量保障和測試工作,絕對不是隨隨便便就能做好或者誰都可以勝任的。
寫作本書的目的并不是簡單地告訴讀者如何使用一個自動化測試工具,我希望讀者在學習完本書的內容后能提高綜合的技術水平(高度與寬度),從而擺脫簡單的手工測試,成為一名新時代的優秀測試工程師。如今移動互聯網的技術和知識迭代都是非常快的,技術棧也比較廣,建議讀者在學習本書內容的同時要自己學會搜索相關技術的官方文檔,構建一個屬于自己的知識體系,從而系統、全面地理解它,千萬不要指望在書中找到所有答案,這在移動互聯網時代是不現實的。
正所謂:“授人以魚,不如授人以漁。”互聯網行業的工程師就好比運動員,要想在競技場上獲勝,需要在訓練場里長期刻苦地練習技巧,想要成為一個不被時代拋棄的技術人,就需要不斷地更新迭代自己的知識體系。加油,讀者們,共勉!
本書的目標讀者——我適合讀這本書嗎?
本書適合的人群很廣,基本上對測試技術感興趣或者正在從事測試工作的同學(不限于手工測試、自動化測試、測試開發、測試管理等)都可以閱讀。本書從對測試行業現狀及未來幾年趨勢的分析開始,呼吁大家在時不我待的當今社會中,找準定位并建立自身的職場核心競爭力。然后圍繞自動化測試技術應用結合多端(后端、Web端、Android端、iOS端、H5端、小程序端)實例來引導讀者快速上手。本書涵蓋了絕大部分自動化測試知識,不但內容充實、邏輯嚴密,且圖文并茂、語言生動。對Robot Framework使用者來說,本書更是一部難得的工具寶典。
本書的內容組織——這本書講了什么內容?
全書以自動化測試技術為主線,以Robot Framework框架作為切入點,共分成4部分。
第1部分 入門篇
? 第1章:從測試行業發展歷程開始,分析了作者近幾年感受到的測試行業的現狀及問題,以及在移動互聯網快速發展和AI、大數據、IoT的沖擊下,測試行業未來幾年可能的發展趨勢。系統性地介紹了測試工程師的核心競爭力的三項基本功和七大核心力,并列舉了測試工程師能力發展圖譜和推薦閱讀書單。
? 第2章:從團隊開展自動化測試的必要性,到開展自動化測試過程中常見的誤區,以及什么樣的項目或團隊適合開展自動化測試、在什么時機引入。最后分享了開展自動化測試需要具備哪些能力、自動化測試常用的工具有哪些及自動化測試接下來幾年還有哪些機遇和挑戰。
第2部分 基礎學習篇
? 第3章:主要介紹Robot Framework框架,包括Robot Framework框架在各個不同的操作系統(Windows、Mac、Linux)上如何進行安裝,以及RIDE 1.7.3的一些新特性。
? 第4章:通過對Python編碼規范、Python版本選擇、Python快速入門學習、Python編程常用技巧等一系列知識點的介紹,讓讀者在短時間內快速掌握Python編程基礎,也為本書后面Robot Framework自動化測試實戰(基于Python)打好編程語言基礎。
? 第5章:主要是對Robot Framework框架基本功能使用的學習,從RIDE編輯器的功能介紹開始,到Robot Framework常用編程器推薦。最后介紹了一系列Robot Framework常用技巧,包括如何合理運用標簽策略、如何通過Pybot命令行來靈活控制執行測試用例、如何使用Jybot來運行Robot Framework測試用例等。
? 第6章:介紹Robot Framework中常用的一些函數庫,包含內置的標準庫、第三方擴展庫,涉及針對變量的操作、類型轉換的操作、元素集合的操作、條件語句的操作及斷言校驗的操作等。
第3部分 項目實戰篇
? 第7章:從接口測試的基本概念開始介紹,到如何從多維度來對接口測試進行用例設計,接著介紹接口測試項目在設計過程需要注意的事項,以及推薦的最佳工程實踐約定。最后結合具體的實戰案例介紹不同類型接口如何開展測試,并在章節的末尾分享了一系列接口測試的實戰技巧,包括如何開發系統關鍵字、如何與GitLab和Jenkins CI集成管理。
? 第8章:主要介紹基于Robot Framework + Selenium框架如何開展Web UI自動化測試,在整個章節中,從Selenium是什么、Robot Framework與Selenium之間的關系說起,到開展Web UI自動化測試常用的關鍵字、Web元素定位方法,以及Web UI多瀏覽器兼容。最后通過具體的項目實戰介紹了如何基于Robot Framework框架來設計Web UI自動化測試項目。
? 第9章:主要介紹基于Robot Framework+Appium框架如何開展移動端App自動化測試,在整個章節中,從Appium是什么及它的常見概念和工作原理說起,到自動化測試所需環境的搭建,包括Appium相關環境、Android相關環境、iOS相關環境。最后通過具體的實戰案例,分別介紹Android(模擬器、真機)、iOS(模擬器、真機)、H5、小程序等自動化測試實踐。
第4部分 擴展篇
第10章:對Robot Framework框架的部分源碼和目錄結構進行剖析,首先分析整個Robot Framework源碼結構、各目錄對應的職責功能,然后通過源碼跟蹤分析來梳理Robot Framework框架執行測試用例的過程,最后通過二次開發增加監聽器的形式來擴展命令行實時顯示日志。
本書的特色——這本書能帶來什么價值?
1. 這本書主要講了什么內容?
全書以自動化測試技術為主線,循序漸進地介紹了自動化測試所涉及的知識體系,通過不同端的實戰項目,綜合運用了所介紹的技術,旨在提高測試人員的綜合技術能力和擴展知識體系。
2. 通過這本書能學到什么?
為了幫助讀者提高測試技術水平,本書不僅介紹了測試方面的知識和自動化測試實戰,還介紹了Python編程與應用、持續集成,以及Android、iOS、H5、小程序等相關知識。
3. 這本書有什么特色?
? 不僅是一本工具書,更是一本測試知識體系的參考書籍。
? 涵蓋多端自動化測試應用,包括后端、Web端、Android端、iOS端、H5端、小程序端等。
? 實戰性強,各端知識介紹均從點到面逐層遞進展開,并用大量的實戰案例來說明自動化測試的最佳實踐與分層設計原則。
內容簡介:

《自動化測試實戰寶典:Robot Framework + Python從小工到專家》以自動化測試技術為主線,循序漸進地介紹了自動化測試所涉及的知識體系,通過不同端的實戰項目,綜合運用了所介紹的技術,旨在提高測試人員的綜合技術能力并擴展知識體系。《自動化測試實戰寶典:Robot Framework + Python從小工到專家》從對測試行業現狀及未來幾年趨勢的分析開始,呼吁大家在時不我待的當今社會中,找準定位并建立自身的職場核心競爭力。然后圍繞自動化測試技術應用結合多端(后端、Web端、Android端、iOS端、H5端、小程序端)實例來引導讀者快速上手。本書涵蓋了絕大部分自動化測試知識,不但內容充實、邏輯嚴密,且圖文并茂、語言生動。對Robot Framework使用者來說,本書更是一部難得的工具寶典。《自動化測試實戰寶典:Robot Framework + Python從小工到專家》適合對測試技術感興趣或者正在從事測試工作的人(不限于手工測試、自動化測試、測試開發、測試管理等)閱讀。希望讀者在學習完本書的內容后能提高綜合的技術水平,成為一名新時代的優秀測試工程師。
目錄:

第1部分 入門篇
第1章 大話測試行業 2
1.1 測試行業現狀分析 2
1.2 未來發展趨勢 4
1.3 測試工程師的核心競爭力 8
1.4 測試知識體系 12
1.5 測試發展能力圖譜及推薦書單 23
1.6 本章總結 25
第2章 認識自動化測試 26
2.1 為什么自動化測試是必要的 26
2.2 手工測試與自動化測試的區別 28
2.3 自動化測試常見誤區 29
2.4 自動化測試的優劣分析 31
2.5 提倡分層自動化測試 32
2.6 什么項目適合做自動化測試 33
2.6.1 什么樣的項目或團隊適合做自動化測試 34
2.6.2 不適合做自動化測試的項目有什么特點 35
2.7 做好自動化測試需要具備哪些能力 36
2.8 自動化測試引入時機和適用場景 37
2.9 常用主流工具有哪些 38
2.10 自動化測試面臨的挑戰 41
2.11 本章總結 41
第2部分 基礎學習篇
第3章 ROBOT FRAMEWORK框架準備 44
3.1 ROBOT FRAMEWORK框架介紹 44
3.1.1 優勢和亮點 44
3.1.2 不足 45
3.1.3 Robot Framework生態系統 45
3.2 WINDOWS平臺環境搭建 47
3.2.1 Python的安裝與配置 47
3.2.2 pip的安裝與升級 49
3.2.3 Robot Framework框架的安裝 50
3.2.4 wxPython框架的安裝 50
3.2.5 Robot Framework RIDE的安裝 51
3.3 MAC平臺環境搭建 52
3.3.1 Python的安裝與配置 52
3.3.2 pip的安裝 53
3.3.3 Robot Framework框架的安裝 54
3.3.4 Mac OS X無法啟動RIDE的解決方案 54
3.4 LINUX平臺環境搭建 57
3.4.1 Python的安裝與配置 57
3.4.2 pip的安裝與配置 58
3.4.3 Robot Framework框架的安裝 58
3.4.4 wxPython框架的安裝 59
3.5 ROBOT FRAMEWORK RIDE支持PYTHON 3 59
3.5.1 Robot Framework RIDE 1.7.3的新特性 59
3.5.2 Robot Framework RIDE 1.7.3的安裝與升級 60
3.6 本章總結 60
第4章 PYTHON測試編程 62
4.1 語法規范 62
4.1.1 代碼編排 63
4.1.2 文檔編排 63
4.1.3 空格的使用 64
4.1.4 注釋及文檔描述 64
4.1.5 命名規范 65
4.1.6 編碼建議 66
4.2 PYTHON 2和PYTHON 3如何選擇 67
4.2.1 為什么Python 2和Python 3都要學 67
4.2.2 Python 2和Python 3的主要特性區別 68
4.2.3 Python 2和Python 3同時兼容的技巧 73
4.3 快速入門 75
4.3.1 Python變量和賦值 75
4.3.2 Python字符串 77
4.3.3 Python列表和元組 78
4.3.4 Python字典 79
4.3.5 Python if分支條件 80
4.3.6 Python while循環 81
4.3.7 Python for循環 81
4.3.8 Python range內建函數 82
4.3.9 Python列表解析 83
4.3.10 Python open函數 85
4.3.11 Python錯誤和異常 88
4.3.12 Python函數 93
4.3.13 Python類 102
4.3.14 Python模塊與包 110
4.3.15 Python常用內置函數 115
4.4 PYTHON編程常用技巧 116
4.4.1 Python拼接字符串的7種方式 116
4.4.2 Python列表推導、字典推導、集合推導 118
4.4.3 Python三元操作符用來進行條件賦值 119
4.4.4 Python同時迭代兩個列表 120
4.4.5 Python帶索引的列表迭代 120
4.4.6 Python 迭代列表組合 120
4.4.7 Python 統計元素出現次數 121
4.4.8 Python 找出列表中出現次數最多的元素 121
4.4.9 Python一鍵啟用文件服務器 122
4.4.10 Python 快速拼接構造列表 122
4.4.11 Python 一行代碼搜索字符串的多個前后綴 122
4.4.12 Python實現真正的switch-case語句 123
4.4.13 Python實例方法、靜態方法、類方法 123
4.4.14 Python求集合并集、交集、差集 124
4.4.15 Python去除列表重復元素的幾種方法 125
第5章 ROBOT FRAMEWORK功能的使用 127
5.1 RIDE兩種啟動方式 127
5.2 RIDE功能介紹 128
5.2.1 菜單欄 128
5.2.2 工具欄 131
5.2.3 案例區 131
5.2.4 工作區 131
5.2.5 常用快捷鍵 132
5.3 常用ROBOT FRAMEWORK編輯器工具 133
5.3.1 PyCharm 133
5.3.2 Sublime Text 138
5.3.3 其他工具 140
5.4 測試項目、測試套件和測試用例 141
5.4.1 測試項目 141
5.4.2 測試套件 141
5.4.3 測試用例 142
5.5 資源文件 143
5.5.1 內部資源文件 143
5.5.2 外部資源文件 143
5.6 常量和變量 144
5.6.1 變量與常量介紹 144
5.6.2 變量作用域 145
5.6.3 Robot Framework內置變量 146
5.6.4 標量變量的定義和使用 147
5.6.5 列表變量的定義和使用 149
5.6.6 字典變量的定義和使用 151
5.6.7 變量知識補充 153
5.7 用戶關鍵字 153
5.7.1 關鍵字Arguments 154
5.7.2 關鍵字Teardown 160
5.7.3 關鍵字Return 161
5.8 EDIT選項卡 162
5.8.1 測試項目Edit選項卡 162
5.8.2 測試套件Edit選項卡 163
5.8.3 測試用例Edit選項卡 165
5.8.4 小結 166
5.9 TEXT EDIT選項卡 167
5.10 RUN選項卡 168
5.10.1 自動保存 168
5.10.2 失敗暫停 168
5.10.3 Arguments參數配置 169
5.10.4 Only run tests with these tags 170
5.10.5 Skip tests with these tags 171
5.10.6 查看測試報告和測試日志 172
5.11 ROBOT FRAMEWORK常用技巧 173
5.11.1 If分支結構 173
5.11.2 For循環結構 174
5.11.3 列表變量的用法和元素獲取 176
5.11.4 變量使用方法補充 177
5.11.5 搜索關鍵字 178
5.11.6 測試用例執行六大技巧 179
5.11.7 測試標簽技巧 181
5.11.8 Setup和Teardown 183
5.11.9 Pybot和Robot命令 183
5.11.10 Jybot模式安裝與運行 185
第6章 ROBOT FRAMEWORK常用函數庫 189
6.1 內置庫介紹 189
6.1.1 標準庫 189
6.1.2 擴展庫 190
6.2 EVALUATE萬能關鍵字 191
6.3 類型轉換 194
6.3.1 Convert To String:轉換成字符串 194
6.3.2 Convert To Integer:轉換成整數 194
6.3.3 Convert To Number:轉換成符點數 194
6.3.4 Convert To Boolean:轉換成布爾值 195
6.3.5 Encode String To Bytes:字符編碼 196
6.4 變量操作 196
6.4.1 Log Variables:打印變量 196
6.4.2 Import Variables:導入變量 196
6.4.3 Set Variable:設置變量 197
6.4.4 Set Global Variable:設置全局變量 197
6.4.5 Set Suite Variable:設置測試套件變量 198
6.4.6 Set Test Variable:設置測試用例變量 198
6.4.7 Set Variable If:當條件滿足時設置變量 199
6.4.8 Get Variables:獲取所有變量 199
6.4.9 Get Variable Value:獲取變量值 199
6.4.10 Get Environment Variables:獲取所有環境變量 200
6.4.11 Get Environment Variable:獲取環境變量值 200
6.4.12 Set Environment Variable:設置環境變量 200
6.5 關鍵字操作 201
6.5.1 Run Keyword:運行關鍵字 201
6.5.2 Run Keyword If:當條件滿足時運行關鍵字 201
6.5.3 Run Keyword Unless:當條件不滿足時運行關鍵字 201
6.5.4 Repeat Keyword:重復運行某關鍵字 202
6.5.5 Run Keywords:運行多個關鍵字 202
6.5.6 Run Keyword And Return:運行關鍵字并返回結果 202
6.5.7 Run Keyword And Return If:當條件滿足時運行關鍵字并返回結果 203
6.5.8 Run Keyword And Continue On Failure:失敗后仍運行指定關鍵字 203
6.5.9 Run Keyword And Ignore Error:運行關鍵字并忽略錯誤 203
6.5.10 Run Keyword If All Tests Passed:所有測試用例通過后運行關鍵字 203
6.5.11 Run Keyword If Any Tests Failed:任一測試用例失敗后運行關鍵字 204
6.5.12 Run Keyword If Test Passed:測試用例通過后運行關鍵字 204
6.5.13 Run Keyword If Test Failed:測試用例失敗后運行關鍵字 204
6.5.14 Run Keyword If Timeout Occurred:測試用例超時后運行關鍵字 204
6.6 條件與循環 205
6.6.1 Continue For Loop:直接繼續下一次循環 205
6.6.2 Continue For Loop If:當條件滿足時繼續下一次循環 205
6.6.3 Exit For Loop:立即退出循環 205
6.6.4 Exit For Loop If:當條件滿足時退出循環 206
6.7 斷言操作 206
6.7.1 Should (Not) Be Empty:斷言是否為空 206
6.7.2 Should (Not) Be Equal:斷言是否相等 207
6.7.3 Should (Not) Be Equal As Strings:斷言作為字符串是否相等 207
6.7.4 Should (Not) Be Equal As Integers:斷言作為整數是否相等 208
6.7.5 Should (Not) Be True:斷言是否為真 208
6.7.6 Should (Not) Contain:斷言是否包含某元素 209
6.7.7 Should (Not) Contain Any:斷言是否包含任一元素 210
6.7.8 Should Contain X Times:斷言某元素是否被包含指定次數 210
6.7.9 Should (Not) Start With:斷言是否以某某開頭 210
6.7.10 Should (Not) End With:斷言是否以某某結尾 211
6.7.11 Should (Not) Match Regexp:斷言是否匹配正則表達式 211
6.7.12 Length Should Be:斷言長度是否相等 212
6.7.13 Keyword Should Exist:斷言關鍵字是否存在 213
6.7.14 List Should (Not) Contain Value:斷言列表是否包含某值 213
6.7.15 Lists Should Be Equal:斷言兩個列表是否相等 213
6.7.16 List Should Not Contain Duplicates:斷言列表不包含重復項 214
6.7.17 Dictionary Should Contain Item:斷言字典是否包含某鍵值對 214
6.7.18 Dictionary Should (Not) Contain Key:斷言字典是否包含某Key值 214
6.7.19 Dictionary Should (Not) Contain Value:斷言字典是否包含某Value值 215
6.7.20 Dictionaries Should Be Equal:斷言給定的字典是否相等 215
6.8 集合操作 215
6.8.1 Create List:創建列表 215
6.8.2 Log List:打印輸出列表中的值 216
6.8.3 Append To List:添加元素到列表 216
6.8.4 Insert Into List:插入元素到列表 216
6.8.5 Copy List:復制列表 217
6.8.6 Get From List:從列表中取值 217
6.8.7 Get Index From List:獲取列表值對應的索引位置 217
6.8.8 Reverse List:反轉列表 218
6.8.9 Set List Value:設置列表值 218
6.8.10 Sort List:排序列表 219
6.8.11 Remove From List:移除列表中指定位置的元素 219
6.8.12 Remove Values From List:從列表中移除給定的所有值 219
6.8.13 Remove Duplicates:從列表中移除重復項 220
6.8.14 Create Dictionary:創建字典 220
6.8.15 Log Dictionary:打印字典 220
6.8.16 Set To Dictionary:添加元素到字典 221
6.8.17 Copy Dictionary:復制字典 221
6.8.18 Get Dictionary Items:獲取字典中的所有元素 221
6.8.19 Get Dictionary Keys:獲取字典中的所有Key值 222
6.8.20 Get Dictionary Values:獲取字典中的所有Value值 222
6.8.21 Get From Dictionary:獲取字典中的指定Key值 222
6.8.22 Pop From Dictionary:刪除并返回字典中的指定Key值 222
6.8.23 Remove From Dictionary:刪除字典中的指定Key值 223
6.9 常用關鍵字 223
6.9.1 Log:打印輸出 223
6.9.2 Log Many:打印各元素值 224
6.9.3 Log To Console:打印到控制臺 225
6.9.4 Sleep:延時等待 225
6.9.5 Comment:添加注釋 226
6.9.6 Call Method:調用方法 226
6.9.7 Get Count:獲取數量 227
6.9.8 Get Length:獲取長度 227
6.9.9 Get Time:獲取時間 227
6.9.10 Pass Execution:標記測試用例執行成功 229
6.9.11 Pass Execution If:當條件滿足時標記測試用例執行成功 229
6.9.12 Fail:標記當前測試用例失敗 229
6.9.13 Fatal Error:停止執行所有測試用例 230
6.9.14 Import Library:導入測試庫 230

第3部分 項目實戰篇
第7章 基于HTTP接口的自動化測試 234
7.1 接口測試掃盲 234
7.1.1 接口的本質 234
7.1.2 接口有哪些類別 235
7.1.3 什么是接口測試 236
7.1.4 接口測試的重要性 236
7.1.5 接口測試的關注點 237
7.1.6 接口測試的介入時機 238
7.1.7 接口測試的根本目標 238
7.2 開展接口測試的基本流程 239
7.3 接口測試用例設計 240
7.3.1 三類對象抽象模型 240
7.3.2 接口測試三層模型 240
7.3.3 接口輸入用例設計 241
7.3.4 接口邏輯用例設計 243
7.3.5 接口輸出用例設計 245
7.3.6 其他部分用例設計 246
7.3.7 一個完整的例子 247
7.3.8 小結 250
7.4 環境依賴安裝 250
7.4.1 所需第三方庫列表 250
7.4.2 安裝Requests依賴庫 251
7.4.3 安裝RequestsLibrary依賴庫 251
7.4.4 安裝HttpLibrary.HTTP依賴庫 251
7.5 接口測試設計規范 252
7.5.1 接口測試整體分層結構 252
7.5.2 接口測試功能劃分原則 254
7.5.3 接口測試套件命名約定 255
7.5.4 接口測試用例命名與分類 255
7.6 接口測試項目實戰:最佳實踐 257
7.6.1 實戰項目接口分析 257
7.6.2 實戰項目框架設計 260
7.6.3 實戰項目業務分層 262
7.6.4 實戰項目模塊劃分 264
7.6.5 公共請求方法 265
7.6.6 業務資源文件 271
7.7 接口測試項目實戰:用例設計 273
7.7.1 實戰一:登錄型接口功能測試設計 274
7.7.2 實戰二:列表型接口功能測試設計 286
7.7.3 實戰三:信息型接口功能測試設計 295
7.7.4 實戰四:基于業務場景下的接口組合測試設計 301
7.8 接口測試項目實戰:成果展示 307
7.9 ROBOT FRAMEWORK實戰常用技巧 308
7.9.1 一套測試用例支持多個環境運行 309
7.9.2 測試用例標簽分類策略 311
7.9.3 測試套件和測試用例Hook 313
7.9.4 動態構造測試數據 315
7.9.5 自定義Python方法 317
7.10 ROBOT FRAMEWORK開發系統關鍵字 319
7.11 ROBOT FRAMEWORK+GITLAB代碼管理 323
7.12 ROBOT FRAMEWORK+JENKINS構建持續集成 324
7.12.1 Jenkins環境搭建 325
7.12.2 Robot Framework Jenkins插件安裝 327
7.12.3 添加運行節點Slave 328
7.12.4 Robot Framework+Job接口自動化測試配置 332
7.12.5 Robot Framework+Job測試構建及結果查看 336
第8章 基于SELENIUM的WEB UI自動化測試 339
8.1 SELENIUM框架介紹 339
8.1.1 Selenium是什么 339
8.1.2 Selenium與Robot Framework的關系 339
8.2 環境安裝 340
8.2.1 安裝依賴庫 340
8.2.2 查看庫版本 340
8.3 第一個示例 340
8.3.1 打開RIDE 341
8.3.2 創建項目 341
8.3.3 創建測試套件 342
8.3.4 創建測試用例 342
8.3.5 編寫測試用例 343
8.3.6 運行及查看結果 344
8.4 常用關鍵字 346
8.4.1 瀏覽器操作 346
8.4.2 iFrame操作 347
8.4.3 輸入操作 347
8.4.4 單擊元素操作 348
8.4.5 屬性獲取 349
8.4.6 元素等待操作 349
8.4.7 預期結果校驗 350
8.4.8 Cookie操作 351
8.4.9 其他常用關鍵字 352
8.4.10 小結 352
8.5 元素定位 353
8.5.1 常用定位工具 353
8.5.2 常用定位方法 355
8.6 多瀏覽器處理 357
8.6.1 Chrome瀏覽器 357
8.6.2 Firefox瀏覽器 358
8.6.3 Safari瀏覽器 360
8.6.4 PhantomJS 瀏覽器 362
8.7 ROBOT FRAMEWORK+SELENIUM WEB UI自動化測試項目實戰 363
8.7.1 實戰項目背景說明 363
8.7.2 Web UI項目分層設計 365
8.7.3 實戰一:Web UI登錄類測試設計 367
8.7.4 實戰二:Web UI應用類測試設計 372
8.7.5 實戰三:Web UI列表類測試設計 376
8.7.6 小結 379
第9章 基于APPIUM的移動端自動化測試 381
9.1 APPIUM框架介紹 381
9.1.1 Appium是什么 381
9.1.2 Appium常見概念 382
9.1.3 Appium工作原理 383
9.1.4 Appium與Robot Framework的關系 385
9.2 環境搭建 385
9.2.1 Android自動化測試所需環境搭建 385
9.2.2 Appium框架所需環境搭建 388
9.2.3 iOS自動化測試所需環境搭建 391
9.3 APPIUM DESKTOP使用介紹 393
9.3.1 Appium Desktop的安裝 393
9.3.2 Appium Desktop的功能介紹 393
9.4 ROBOT FRAMEWORK+ APPIUM開展ANDROID自動化測試 400
9.4.1 需要了解的ADB知識 400
9.4.2 獲取Android設備序列號 402
9.4.3 獲取App包名和Activity名 403
9.4.4 第一個Appium Android自動化測試示例 406
9.4.5 獲取Android App控件元素的方法 408
9.4.6 Android App元素常用定位方式 411
9.4.7 Appium Library常用關鍵字 413
9.4.8 Android自動化測試實戰:前期準備 414
9.4.9 Android自動化測試實戰:項目結構設計 416
9.4.10 Android自動化測試實戰:公共關鍵字設計 418
9.4.11 實戰一:實現Android App自動登錄測試 420
9.4.12 實戰二:測試Android App同頁面的多個同類型元素 423
9.4.13 實戰三:獲取并斷言Android App Toast提示信息 427
9.4.14 小結 428
9.5 ROBOT FRAMEWORK+APPIUM開展IOS自動化測試 429
9.5.1 iOS開發證書、描述文件與Bundle ID的關系 430
9.5.2 iOS產出物的幾種格式 431
9.5.3 獲取iOS設備的UDID和App Bundle ID 432
9.5.4 iOS常用命令 434
9.5.5 iOS模擬器的安裝和使用 435
9.5.6 iOS模擬器simctl常用命令 437
9.5.7 Appium安裝配置WebDriverAgent 439
9.5.8 獲取iOS App控件元素的三種方法 444
9.5.9 iOS App元素常用定位方式 448
9.5.10 第一個Appium iOS模擬器自動化測試示例 450
9.5.11 第一個Appium iOS真機自動化測試示例 452
9.5.12 Robot Framework + Appium實現iOS模擬器自動化測試 454
9.5.13 Robot Framework + Appium實現iOS真機自動化測試 459
9.5.14 小結 464
9.6 APPIUM+PYTHON開展H5混合應用自動化測試 465
9.6.1 在混合應用中識別H5頁面的幾種方法 465
9.6.2 混合應用元素定位整體思路 467
9.6.3 App WebView調試模式的檢查和開啟 467
9.6.4 利用DevTools遠程調試WebView 468
9.6.5 一個Appium+Python H5自動化測試示例 469
9.6.6 小結 475
9.7 ROBOT FRAMEWORK+ APPIUM開展小程序自動化測試 476
9.7.1 小程序和H5的區別 476
9.7.2 一個Appium+Python 小程序自動化測試示例 477
9.7.3 Robot Framework+ Appium實現小程序自動化測試 480
9.8 本章總結 486

第4部分 擴展篇
第10章 ROBOT FRAMEWORK框架部分源碼解析 490
10.1 ROBOT FRAMEWORK框架目錄結構 490
10.1.1 Robot Framework源碼位置 490
10.1.2 Robot Framework源碼目錄結構 492
10.2 ROBOT FRAMEWORK執行用例邏輯分析 500
10.3 ROBOT FRAMEWORK二次開發—命令行實時顯示日志 511
序: