産品特色
編輯推薦
適讀人群 :本書適閤閱讀的人群很廣,基本上想做自動化測試的人都可以閱讀。本書希望用更多的實例來引導讀者上手,剛開始學習的讀者跟著做會比較好。本書涵蓋瞭在自動化測試中遇到的大部分場景,不但內容充實、邏輯嚴密,且圖文並茂、語言生動。對Robot Framework使用者來說,本書更是一部人人必備在案頭的工具書。 1、涵蓋自動化測試中的大部分場景,內容充實,邏輯嚴密;
2、作者是RF中文社區的核心力量之一,書中有其對自動化測試的很多思考;
3、《Robot Framework自動化測試修煉寶典》是一本測試實踐書,書中融入瞭大量的前綫測試經驗,是人人必備的案頭工具書。
推薦購買:
海報:
內容簡介
《Robot Framework自動化測試修煉寶典》分為3個部分進行介紹。在第1部分築基篇中,主要有自動化測試概述、Robot Framework兩章的內容;在第2部分小乘篇中,主要有Web自動化測試、C/S自動化測試、數據庫自動化測試、接口自動化測試、RF內置測試庫、持續集成自動化測試、移動自動化測試總共七章的內容;在第3部分大乘篇中,主要有自定義你的RF一章的內容。《Robot Framework自動化測試修煉寶典》的自動化測試主要指功能自動化測試。
《Robot Framework自動化測試修煉寶典》適閤閱讀的人群很廣,基本上想做自動化測試的人都可以閱讀。《Robot Framework自動化測試修煉寶典》希望用更多的實例來引導讀者上手,剛開始學習的讀者跟著做會比較好。《Robot Framework自動化測試修煉寶典》涵蓋瞭在自動化測試中遇到的大部分場景,不但內容充實、邏輯嚴密,且圖文並茂、語言生動。對Robot Framework使用者來說,《Robot Framework自動化測試修煉寶典》更是一部人人必備在案頭的工具書。
作者簡介
齊濤(網名:道長),__eol__行業ID:qitaos__eol__平安科技資深測試工程師、自動化測試工程師。目前負責平安科技任意門項目測試團隊管理和自動化測試技術方案調研及實施。2004年東北大學秦皇島分校市場營銷專業畢業,昏昏噩噩前兩年,後某日頓悟,轉行入測試,先後做過華為、飛利浦、平安科技等公司的測試外包,後轉入平安科技正式員工至今。期間經曆從手工測試,到QTP自動化測試,再到如今的Robotframework自動化測試。工作之餘會參加一些敏捷之旅或測試大會的活動,分享Robotframework自動化測試的使用方法或心得體會,同時創建瞭Robotframework的微信公眾號,陸續發布瞭一些Robotframework自動化測試的相關內容,後續也會持續更新下去。目前主要緻力於Robotframework自動化測試的深入研究和推廣,歡迎大傢與我溝通交流。
內頁插圖
精彩書評
本書作者是一位高水平的測試實踐傢,在工作和學習中深刻理解瞭Robot Framework在軟件測試中的應用,並總結瞭一套高效的學習理論和方法。這本書涵蓋瞭在自動化測試中遇到的大部分場景,不但內容充實、邏輯嚴密,且圖文並茂、語言生動。對Robot Framework使用者來說,本書更是一部人人必備在案頭的工具書。
——優酷土豆網搞基測試工程師 丁恒
Robot Framework(RF)是一款優秀的開源測試框架,它簡單易用、拓展性強,可以適用於各種各樣的被測物和測試場景。同時RF有著十分活躍的社區支持,從工具選型的角度來看,很值得花時間去研究。RF自身有著良好的設計,很多測試理念被巧妙地集成其中,因此測試開發工程師深入學習RF也會獲益良多。作者是RF中文社區的核心力量之一,也是RF的堅定實踐者。在本書裏,作者將多年一綫的測試經驗融入瞭對RF的詳盡介紹內容中。閱讀本書,讀者既可以快速掌握RF的具體知識,又可以學習到作者對自動化測試的很多思考。一舉兩得,何樂而不為呢?
——雪球直男測試工程師 劉曉光
在豆瓣的時候,也使用瞭一段時間的Robot Framework(RF)。記得剛入職豆瓣的時候,搭建RF的環境就坑瞭3天。搭建好以後就換瞭Mac,然後又是3天。看到道長把安裝過程寫得很詳細,於是覺得這本書的讀者好幸福呀,可以很輕鬆地安裝並且開始學習。RF的流行是因為很多人都為RF貢獻瞭力量,並且以Library的形式提供更加便捷的使用方式。本書還介紹瞭很多流行的Library,是一本業界良心的好書。
——豌豆莢資深測試工程師 羋峮
我在諾基亞網絡使用Robot Framework比作者早很多,但作者卻是編寫中文實用文章的很多人,同時積極普及知識、推動相關社區發展,如今更是將他的經驗總結成書,內容詳盡細緻,是初學者們非常適閤的入門書和參考書。
——大中華區敏捷及DevOps中心主管、IBM 徐毅
目錄
第一部分 築基篇
第1章 自動化測試概述 2
1.1 分層自動化測試 2
1.2 界麵自動化測試工具 3
1.3 自動化測試做到什麼樣算好 4
1.4 小結 5
第2章 Robot Framework 6
2.1 框架介紹 6
2.2 安裝指南 8
2.2.1 Windows平颱 8
2.2.2 Mac平颱(Linux平颱可參考) 15
2.2.3 pip安裝 19
2.3 第一個案例 19
2.3.1 打開RIDE 20
2.3.2 創建工程和測試套 21
2.3.3 創建案例 23
2.3.4 寫一行腳本 24
2.3.5 運行案例 25
2.3.6 查看運行結果 26
2.3.7 小結 28
2.4 RIDE工具 28
2.4.1 工具介紹 28
2.4.2 菜單欄&工具欄 29
2.4.3 工作區 45
2.5 工程、測試套件、測試案例 49
2.5.1 Project工程 49
2.5.2 Test Suite測試套件 53
2.5.3 Test Case測試案例 56
2.5.4 三者關係 58
2.6 測試庫 59
2.7 Resource資源文件 65
2.7.1 新建資源 65
2.7.2 快捷菜單 66
2.7.3 Settings設置項 66
2.7.4 加載資源 67
2.7.5 External Resources 外部資源 68
2.8 變量和常量 71
2.8.1 變量與常量基礎 72
2.8.2 Scalar變量 79
2.8.3 List變量 88
2.8.4 變量轉換 97
2.8.5 其他變量 104
2.8.6 變量文件 104
2.9 Keyword關鍵字 105
2.9.1 用戶關鍵字 105
2.9.2 傳入參數Arguments 108
2.9.3 Return Value返迴值 116
2.10 循環&分支 127
2.10.1 循環 127
2.10.2 分支 134
2.10.3 二者結閤 142
2.11 運行界麵 143
2.12 小結 149
第二部分 小乘篇
第3章 Web自動化測試 152
3.1 Selenium 152
3.2 Selenium2Library安裝 153
3.3 Selenium2Library常用關鍵字 155
3.3.1 browserManagement 155
3.3.2 Cookie 157
3.3.3 Elements 157
3.3.4 JavaScript 160
3.3.5 screenshot 160
3.3.6 waiting 160
3.4 測試案例設計 161
3.4.1 案例設計Step1 162
3.4.2 案例設計Step2 164
3.4.3 案例設計Step3 166
3.5 測試案例demo 168
3.5.1 使用demo前的準備 168
3.5.2 Selenium2Library-demo 170
3.6 常見問題 177
3.7 小結 178
第4章 C/S自動化測試 179
4.1 AutoIt 179
4.2 AutoItLibrary安裝 180
4.3 AutoItLibrary關鍵字 181
4.4 測試案例 182
4.4.1 計算器案例 182
4.4.2 結閤Selenium2Library處理對話框 183
4.4.3 結閤Selenium2Library處理上傳下載 185
4.5 小結 189
第5章 數據庫自動化測試 190
5.1 數據庫測試介紹 190
5.2 DatabaseLibrary和cx_Oracle安裝 191
5.3 DatabaseLibrary關鍵字 191
5.4 測試案例 191
5.4.1 Oracle數據庫 191
5.4.2 sqlite3數據庫 193
5.5 常見問題 194
5.6 小結 195
第6章 接口自動化測試 196
6.1 接口測試 196
6.2 requestsLibrary、requests安裝 197
6.3 requestsLibrary關鍵字 197
6.4 測試案例 197
6.5 小結 201
第7章 RF內置測試庫 202
7.1 測試庫介紹 202
7.2 BuiltIn 203
7.2.1 Convert 203
7.2.2 Verify 204
7.2.3 Variables 205
7.2.4 RunKeyword 206
7.2.5 Control 207
7.2.6 Misc 208
7.2.7 強大的Evaluate 208
7.3 String 212
7.3.1 Convert 213
7.3.2 Line 213
7.3.3 String 214
7.4 Collections 215
7.4.1 List 215
7.4.2 Dictionary 215
7.5 OperatingSystem 216
7.5.1 Env 216
7.5.2 File 217
7.5.3 Directory 217
7.5.4 Path 218
7.6 Process 218
7.7 XML 219
7.8 其他測試庫 220
7.9 小結 220
第8章 持續集成自動化測試 221
8.1 Jenkins安裝與配置 221
8.1.1 Jenkins簡介 221
8.1.2 安裝Jenkins 222
8.1.3 配置節點 223
8.1.4 安裝插件 228
8.2 Jenkins上執行RF自動化測試 230
8.2.1 創建Job 231
8.2.2 配置Job 232
8.2.3 控製Job 239
8.2.4 RF插件作用 240
8.2.5 多配置Job 241
8.3 小結 244
第9章 移動自動化測試 245
9.1 Appium介紹 245
9.2 Android自動化測試 250
9.2.1 模擬器安裝 250
9.2.2 測試案例 253
9.2.3 Android對象識彆 256
9.3 iOS自動化測試 257
9.3.1 測試案例 257
9.3.2 iOS對象識彆 260
9.4 小結 263
第三部分 大乘篇
第10章 自定義你的RF 266
10.1 修改Selenium2Library測試庫 266
10.2 編寫測試庫 270
10.2.1 測試庫分類 271
10.2.2 測試庫結構 271
10.2.3 測試庫命名 273
10.2.4 測試庫頭部 273
10.2.5 測試庫配置項 274
10.2.6 測試庫文檔 274
10.2.7 測試庫關鍵字命名 275
10.2.8 測試庫關鍵字參數 275
10.2.9 測試庫的參數 276
10.2.10 測試庫關鍵字返迴值 276
10.2.11 測試庫日誌打印 276
10.2.12 對測試庫做測試 277
10.2.13 發布測試庫 277
10.3 小結 279
結語 280
參考資料 282
精彩書摘
9.1 Appium介紹
Appium是Sauce Labs齣品的一個開源的自動化測試框架,可以用來測試iOS和Android平颱上的原生應用、移動Web應用和混閤應用。原生應用是指使用iOS和Android的SDK開發齣來的App;移動Web應用指的是使用移動瀏覽器訪問的應用,比如Appium支持iOS上的Safari和Android上的Chrome,或內置瀏覽器;混閤應用指的是通過WebView使得原生代碼內容和Web內容可以進行交互的App。
當然,最重要的是Appium是一個跨平颱的框架,它允許你在iOS和Android這兩個不同平颱上使用同樣的API來編寫自動化測試腳本,這樣提高瞭測試代碼的復用性。
前麵介紹Web測試底層用的是Selenium框架,其實Appium這裏也是封裝瞭Selenium的框架,其實就可以把移動App應用看作是一個網頁,然後通過Appium進行測試。
Appium結閤Robot Framework來做測試,需要先安裝好Appium。
有關Appium的安裝,如果你使用的是Mac平颱,可以參考如下網址中的文章的介紹:
https://testerhome.com/topics/1225
如果你使用的是Windows平颱,可以參考如下網址中的文章的介紹:
https://testerhome.com/topics/2376
這裏就不詳細介紹瞭。
安裝好Appium之後,需要再安裝兩個Python的測試庫,一個是Appium-Python-Client,另一個是robotframework-appiumlibrary。前者是用Python腳本來驅動Appium的,後者是基於Robot Framework實現的Appium庫,用到瞭前者實現的一些基礎框架。這兩個就類似於Selenium和Selenium2Library一樣。
相關下載地址:
https://pypi.python.org/pypi/Appium-Python-Client/
https://pypi.python.org/pypi/robotframework-appiumlibrary
推薦使用pip安裝。如果想要手動安裝,那就需要查看一下這個Library依賴哪些Library。查看方法是在下載地址把源碼包下載下來,解壓縮,通常會有一個目錄是“.egg-info”結尾的,它有可能在根目錄,也有可能在src裏麵,前麵的名字一般就是測試庫的名字瞭,比如Appium_Python_Client.egg-info。找到這個目錄後,目錄下麵會有一個requires.txt的文件,打開它就可以看到它依賴哪些Library及其版本瞭。
比如Appium-Python-Client依賴的是:
selenium>=2.41.0
enum34
而robotframework-appiumlibrary依賴的是:
decorator >= 3.3.2
robotframework >= 2.6.0, <= 2.8.7
docutils >= 0.8.1
Appium-Python-Client >= 0.5
mock >= 1.0.1
sauceclient >= 0.1.0
pytest-cov >= 1.8.1
pytest-xdist >= 1.11
pytest-pythonpath >= 0.4
當然,可能其中某個Library又會依賴其他Library,這就要具體地一個個看瞭,所以手動安裝是比較麻煩的事情,如果依賴比較少還可以,依賴多的時候就不如pip省心瞭。
在Appium安裝好之後,需要運行一下appium-doctor來檢查一下環境是否都配置好瞭。可以通過命令行運行,也可以通過單擊Appium客戶端界麵上的第3個按鈕(比較像醫生聽診器的那個),Mac版客戶端界麵,如圖9-1-1所示。
單擊此按鈕後,如果看到類似於下麵的信息,那就是配置正確瞭。如果有任何異常,會提示你要修復異常,比如缺少某些安裝包或者沒有配置環境變量等。
/Users/qitao >'/Applications/Appium.app/Contents/Resources/node/bin/node' '/Applications/ Appium.app/Contents/Resources/node_modules/appium/bin/appium-doctor.js'
Running iOS Checks
Xcode is installed at /Applications/Xcode-beta.app/Contents/Developer
Xcode Command Line Tools are installed.
DevToolsSecurity is enabled.
The Authorization DB is set up properly.
Node binary found at /usr/local/bin/node
iOS Checks were successful.
Running Android Checks
ANDROID_HOME is set to "/Users/qitao/Desktop/mobile/android/adt-bundle-mac- x86_64-20140321/sdk"
JAVA_HOME is set to "/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/ Home."
ADB exists at /Users/qitao/Desktop/mobile/android/adt-bundle-mac-x86_64-20140321/ sdk/platform-tools/adb
Android exists at /Users/qitao/Desktop/mobile/android/adt-bundle-mac-x86_64-20140321/ sdk/tools/android
Emulator exists at /Users/qitao/Desktop/mobile/android/adt-bundle-mac-x86_64- 20140321/sdk/tools/emulator
Android Checks were successful.
All Checks were successful
都安裝好後,我們就直接用例子入手瞭。
……
前言/序言
推薦序一
我們已經進入瞭移動互聯網的時代,企業在市場、渠道、産品、服務各方麵都麵臨著新的挑戰,每個成功企業都在培養快速適應變化的能力,這就是我們時常說的企業敏捷性的重要組成因素。對於企業的IT部門來說,麵對著愈發不確定的客戶需求,快速並高質量地完成開發工作,使需求早日上綫,從而能夠盡早收集市場反饋,優化産品或服務,是必須著重解決的問題。在追求快速上綫的同時,質量底綫是我們必須堅守的紅綫,在此過程中,自動化迴歸測試技術是一種行之有效的保障手段。本書介紹的Robot Framework框架就是非常優秀的自動化迴歸測試框架,值得從事開發測試的同行仔細研究。
從2011年起,我以谘詢顧問的身份進入平安科技,幫助其進行敏捷轉型,在那時認識瞭本書作者。在一些試點項目中,我們要求開發團隊在提升交付速度的同時保證質量,但原有的QTP工具不能滿足要求。經過調研,我們選定瞭“Robot Framework + Selenium”的開源技術體係來替代QTP,完成界麵自動化迴歸測試工作,並在實踐中取得瞭非常良好的效果,得到瞭各方的肯定和贊譽。後來,我們用Robot Framework結閤Requests來進行HTTP接口的自動化迴歸測試,進一步夯實瞭分層自動化測試體係,為平安科技日後的全麵敏捷轉型打下瞭堅實的基礎。
在這一過程中,齊濤潛心鑽研,經過不懈努力逐步承擔起公司內部Robot Framework的支持和推廣工作,自己也成為瞭這方麵的專傢。本書是他的開山之作,具備很高的實操性,相信讀者可以從本書中學到諸多來自一綫的實踐經驗。最後,祝大傢閱讀愉快!
Agilean谘詢公司創始人、平安科技敏捷轉型總顧問 吳穹
推薦序二
移動互聯網發展到2015年,算是進入瞭一個白熱化階段,開發和測試的技術發展都已經突破瞭好幾次瓶頸,但現在依然在追求更高的技術和産品質量。而軟件測試人員算是在這個熱潮中比較辛苦的,正巧軟件測試在國內也處在快速發展和變化期,所以無論是測試技術,還是本書中提到的測試分層,都是對測試人員極大的挑戰。
我認識道長(本書作者)也有好多年瞭,道長為人非常謙遜,做事情比較踏實,不像我那麼高調,同時對技術也有很大的追求。我依舊秉持我做事的原則,就如同我要去測試一個産品,先要對這個産品的業務和技術架構有深入瞭解一樣,我是通讀瞭本書之後纔開始寫序的。我能體會到道長寫這本書的不容易,就如作者在書的最後提到的,Robot Framework本身在國內受眾不大,所以道長寫這本書在我看來一方麵是給用Robot Framework的同行一些自己的經驗,另一方麵真的就是自己對自己的一個總結。我在這裏呼籲大傢真要尊重寫書的人(當然那種純理論忽悠的不包括在內),因為一本書的背後都有不為人知的很多心酸,沒有一些壓力和自己的堅持是無法完成的。一本書的齣版對於作者而言就如同十月懷胎,如同自己的孩子一樣親切。
我還是迴過來說這本書吧。本書就如作者自身定義的,更像一本操作手冊,雖然說的是Robot Framework這樣一個工具,但其實涉及的麵非常廣。其中包括但不僅限於Web自動化測試、接口自動化測試,以及現在大傢很關心的移動無綫的自動化測試,書的最後一部分也提到瞭使用Robot Framework去做持續集成,以及如何結閤移動最新的框架Appium來做自動化測試。移動互聯網測試行業還是有蠻多人認識我的,也知道我的風格。首先這肯定不是一本“忽悠”的書,相反,這本書在每個章節都有大量的實踐,以及需要每個讀者去操作瞭纔能夠真正理解的內容。道長也非常貼心地在書中提供瞭知識點和案例,寫明瞭官方的下載地址以及自己的Github地址,讓大傢能夠更好地開展學習。不過我在這裏依然需要提醒讀者,移動互聯網的技術和知識迭代都是非常快的,而且技術棧會比較深,所以大傢在讀相關書籍的時候要自己學會Google相關技術的官方文檔,從而有一個全麵的理解,韆萬不要指望在書中找到所有的答案,在移動互聯網時代這是不現實的。
Robot Framework我覺得還是很有必要學習一下的,很多測試行業的同行其實會比較疑惑在項目中的自動化用例怎麼大批量編寫、管理等問題,我個人覺得Robot Framework就是一個不錯的粘閤劑。Robot Framework能夠結閤各種測試工具進行測試,同時也能夠更方便和有條理地管理我們的測試用例。Robot Framework本身在國內的中文資料很少,本書對於初學者來講會有非常大的幫助,同時也讓用過Robot Framework的同行們能夠對Robot Framework有一個更全麵的瞭解。
在互聯網行業做一名測試工程師很難,在移動互聯網行業做一名測試工程師更難。移動互聯網行業的測試工程師需要麵臨非常多的測試工具、框架和技術,不得不說在這其中,Robot Framework是個不錯的工具,相信它能夠幫助大傢在項目中將測試技術更好地落地。
最後要再次感謝道長對於本書的付齣,也預祝本書大賣,並且能夠幫助到更多的人。
寫於2015年
螞蟻金服資深測試開發工程師、Testerhome測試技術社區創始人之一、《大話移動App測試》作者 陳曄(Monkey)
前 言
寫這本書之前一定要先感謝一個人——吳穹博士,如果不是吳穹博士來平安科技做谘詢顧問,嚮我們推薦瞭Robot Framework(下麵簡稱RF)這個框架,我想或許我還在玩QTP呢,又或者用劉興翬的PLSA(這也是一個很棒的工具)。吳穹博士是我的引路人,他也是很多目前在用RF做自動化測試的同行們的引路人,非常感謝吳穹博士。
我不是“科班”齣身,也許大傢都想不到,我大學學習的專業是市場營銷,可惜專業課的知識都還給老師瞭,憑著對IT的喜愛,經曆瞭種種磨難,成功“混入”瞭IT圈,還做瞭測試。測試其實是一個“高危職業”,要比産品經理(或SA需求分析)想得全麵,要比開發懂需求,要有很強的發散思維,要能讀懂代碼,必要的時候還要會寫個代碼。說點做測試的同行不愛聽但卻是事實的話,很多人是因為覺得做測試比較簡單纔入的這行。說測試是一個“高危職業”,那是因為當生産上齣瞭問題,90%的人(領導)都會問:“測試的時候為什麼沒有發現?”(這是好的語氣,不好的語氣就是:“你們是怎麼測試的?這都沒發現?”)也不知道我怎麼當初就頭腦發熱地選擇瞭做測試,也不知道為什麼當初在華為做外包的時候,天天加班還覺得很充實。在這裏我奉勸各位,測試有風險,入行需謹慎!
我在2008年進入平安科技時,是以外包的身份進來的,進來之前“摸”瞭一個星期的QTP,進來以後就專職負責做QTP自動化測試案例。當時的組裏本身有一批QTP案例,都是錄製齣來的,那時候最痛苦的是由需求變更導緻的修改案例,每次發版本要跑迴歸,有時候要持續到淩晨兩三點,確保所有的自動化測試案例都沒問題瞭,纔能封版上綫。後來逐步改善案例,逐步拋棄掉瞭錄製迴訪,從描述式編程到後來用的Framework Manager框架,基本上可以說把QTP“玩”到極緻瞭吧,其實到現在我偶爾還在用QTP,比如可以用來幫我批量打開十幾個遠程桌麵什麼的。
後來經過朋友介紹進入瞭平安科技,從外包轉為瞭內部員工。那時候新進入的組裏基本上沒有什麼自動化測試案例,大部分時間其實也是在手工測試。到瞭2011年9月左右,藉著組內的一個項目,吳穹博士作為谘詢顧問,推薦Robot Framework給我們。當我學習瞭這個工具後,被它深深吸引住瞭,對於我這樣用慣瞭QTP的懶人來說,RF這種輕量又全麵的工具,基本上完勝QTP。也是差不多從那個時候開始,我在博客上斷斷續續地寫起瞭RF的相關博客,也相當於學習筆記吧。同時我也順便學起瞭Python,有需要的時候就會看RF的底層源代碼,到後來可以適當地改動一些代碼來擴展RF庫,寫代碼對我這樣的“門外漢”來說還是比較睏難的,改代碼就是我比較擅長的瞭,最不濟還可以“照貓畫虎”。
平安科技的自動化測試工具最早的時候基本上隻有QTP,後來增加瞭Robot Framework和劉興翬自己開發的PLSA,變成瞭“三足鼎立”。然後QTP直接被廢棄,變成“雙雄爭霸”瞭。其實我倒是覺得沒什麼爭的,RF和PLSA各有自己的特點,RF降低瞭大傢做自動化測試的門檻,人人都可以做自動化測試,我覺得這樣挺好的。從另一個角度刺激瞭專職的測試人員要提升自身的競爭力。而PLSA還是需要有些Java開發經驗的,當然它也可以零基礎入門,但是我覺得用Eclipse寫自動化腳本還是太重瞭。順帶提一句,劉興翬後來做瞭RF的PLSA測試庫,也就是在RF上也可以用PLSA,這算是共贏吧。
經曆瞭這些年的自動化測試,其實最頭疼的是領導的思維,被那些“大忽悠”給“忽悠”瞭。通常大佬們最容易被“忽悠”的有三點:第一點,自動化率。盲目地追求100%的自動化率,每年都把提高自動化率作為KPI之一;第二點,發現缺陷數。自動化測試案例能發現多少缺陷,自動化案例運行失敗不一定是缺陷導緻的,可能是執行的環境有問題、需求變更以及其他的一些情況。真正在失敗案例中能發現缺陷的,可能都不會超過10%;第三點,節省人力。認為多做自動化測試案例能節省人力,怎麼說呢,案例越多其實反而不節省人力,除非你的係統一年沒多少需求變更。
遇到這樣的領導你說怎麼辦?說服領導?換個公司?想辦法輕鬆地完成任務?對我這樣的懶人來說,我會先想辦法輕鬆地完成任務,順便提升一下技術實力。因為我一直堅信,懶人的存在促使科技進步,所以Robot Framework正好閤適,初級入門可以完成任務,深入研究可以提升技術。
本書適閤閱讀的人群很廣,基本上想做自動化測試的人都可以閱讀。本書的自動化測試主要指功能自動化測試。適閤初學者入門學習。對於最深入的進階部分,我隻會簡單提一下,因為我覺得到瞭那個層次,大傢已經可以自由發揮瞭,所以可能不太適閤“老鳥們”瞭,當然入手收藏也是不錯的。我不太擅長概念性的內容,所以涉及概念性的內容可能會比較少,或者很快帶過。我希望用更多的實例來引導大傢上手,剛開始學習的讀者跟著做會比較好,書裏麵的案例我也會與大傢分享。
本書第1章是一些自動化測試的概念性內容,並沒有深入探討;第2章是整個Robot Framework的基礎,建議初學者多花點時間學習;從第3章到第9章分彆介紹瞭不同類型的自動化測試、持續集成和移動自動化測試;最後第10章作為深入學習的部分,內容不是很多,主要是為瞭給大傢一個入門的方嚮,具體還要看大傢各自發揮。
特彆鳴謝本書的審稿人陳曄和徐毅,感謝兩位的辛苦付齣,提齣瞭不少修改意見。感謝百忙之中幫忙進行封麵設計的陳爭,也感謝齣版社的各位編輯幫忙進行排版設計。
齊濤