前言
《Selenium2 自動化測試實戰—基於Python 語言》出版後,我陸續收到許多回饋,有很多同學(我習慣這麼稱呼軟體測試的同行)透過這本書學會了Selenium 自動化測試,這是我寫這本書的初衷,能在你學習測試技術的道路上提供一點點幫助,我感到非常高興!也有同學向我回饋了書中的一些錯誤,在此深表感謝。
隨著我在自動化測試技術上的累積,我越發覺得《Selenium2 自動化測試實戰—基於Python 語言》一書有許多不足之處,有些內容已經過時,有些技術需要更進一步的探討。2017 年的時候我萌生要寫第二版的想法,當時只是想對少部分內容進行修改,直到2018 年下半年才開始動筆重新整理內容。我寫書的方式是一遍遍地修改書中的內容,所以,雖然不是從頭到尾寫一本新書,但也花費了半年之久。
隨著我對自動化測試的了解,更正了前一本書中的部分觀點。
(1) 加入了pytest 單元測試架構的使用方法,與unittest 相比,pytest 的功能更加強大,而且還有豐富的擴充函數庫,更適合用來做自動化測試。
(2) 補充Jenkins 的使用方法。
(3) 增加appium 移動自動化測試工具的介紹。隨著行動網際網路的發展,行動自動化測試幾乎成為測試人員必備技能之一,appium 正是在Selenium 的基礎上擴充而來的自動化工具。
當然,在上一本的基礎上,本書也刪減了部分內容。
(1) 刪掉了Selenium IDE 相關的內容, 越來越多的測試人員使用WebDriver 撰寫自動化指令稿,Selenium IDE 作為瀏覽器的自動化外掛程式,已經很少有同學單獨使用它完成大型自動化專案了。
(2) 刪掉Python 多執行緒相關的內容。多執行緒的優點是可以加強自動化測試的執行速度,缺點是降低了自動化的穩定性。本書介紹了減少測試使用案例執行時間的其他方法。
(3) 刪掉BDD 行為驅動開發相關的內容,本書更聚焦於自動化測試技術,所以,其他技術請參考專業的書進行學習。
在本書出版之際,Selenium4 已在開發當中,從Selenium 官方列出的訊息來看,Selenium4 對於本書的內容影響很小。
最後,由於作者水準有限,書中難免有錯誤之處,希望你能將錯誤回饋給我,我將感激不盡。感謝編輯安娜,沒有她的幫助本書無法出版。感謝讀者的厚愛,正是你們的鼓勵和支援,才使我有動力完成本書。
蟲師