這10本書,給你一次徹底學會自動化測試的機會!
從2018年初開始,到現在差不多1年多的時間,我投入了一部分精力用於專案的自動化測試建設工作。目前來看收益還是比較明顯的,在這個過程中也加深了對自動化測試的理解,這邊就總結下自己對自動化測試的認識。
首先我想說下在開展自動化前後,我的工作狀況的對比:
去年2017年Q3、Q4,基本上天天處於996甚至997的狀態。大部分時間都花在了功能測試保障、迴歸測試和上線驗證。因為專案線上上有多達7,8個不同的叢集,每一次版本上線為了保險起見,開發會一個叢集一個叢集小心翼翼地上線,所以基本上天天都處於上線的狀態。每次上線,手工測試時間順利的話在半小時左右,如果遇到問題跟開發聯調定位,會達到數個小時。除了時間上開銷很大之外,每次上線帶來的精神上的壓力其實更嚴重,非常害怕哪個使用者半夜跳出來反饋說排程有Bug。
在開展了自動化測試之後,現在我給“日常版本迭代測試”只預估了25%的工作量。任意叢集上線,我只要負責點一下Jenkins的“開始構建”按鈕,即可完成驗收。如果有出現用例失敗,會自動傳送郵件告知開發。
顯然,目前的工作狀態要好很多,是因為專案工作量減少了嗎?顯然不是。其實今年以來整個專案組在研發的投入要比去年更多,工作量只會比以前更重,還要兼顧多個私有化部署的客戶的驗收和日常測試保障工作,工作量肯定是隻增不減的。之所以能有更多的時間空餘出來做其它更多維度的事情,這一切都得益於“自動化測試”的幫助,它極大地解放了我的手工測試時間,同時更加提升了上線的信心。
不過市面上關於軟體自動化測試的書,真心不多,但自動化測試卻是我們高階軟體測試人員必備的技能,如果你也想把你的精力投入到自動化測試建設的工作中去,不妨從這些書籍開始:
1、《程式碼整潔之道》
成為自動化測試工程師的第一步就是程式設計,對於大多數開發人員來說,編寫程式碼並不是一個挑戰,但編寫出一個乾淨且易讀的程式碼卻很難,本書是每一個自動化測試人員的必讀書籍,在本書中,你將瞭解什麼是有意義的名稱、註釋、格式、錯誤結構、類、系統、併發性等等。
2、《自動化測試最佳實踐》
這本書在自動化測試領域影響深遠,它為很多公司指明瞭測試成功的方向。本書講述了一些公司應用自動化的經歷,其中涉及了很多專案,從複雜的政府部門系統到醫療裝置,從SAP業務過程開發到Android移動應用和雲端計算。
3、《Selenium 2自動化測試實戰》
Selenium自動化測試技術已經出來很多年了,市面上的書基本都是基於Java,本書基於Python,也算是一大亮點,書中提供了大量的示例程式碼,用簡單的方法告訴讀者如何學會使用一個自動化測試工具。
4、《Implementing Automated Software Testing》
顧名思義,本書將幫助你實現自動化軟體測試(AST),同時保持質量、降低成本和節約時間。我覺得書中印象最深刻的一章是“為什麼軟體會測試失敗和如何避免”。與此同時,你還將從本書中學到一些經驗,比如如何自動化、AST框架的測試、開發測試自動化策略。
5、《The Agile Samurai》
自動化測試是敏捷開發人員的第一愛好。本書將幫助你詳細瞭解敏捷開發,它將使您熟悉持續整合、測試驅動開發、單元測試、敏捷宣言、敏捷規劃等等。
6、《敏捷軟體測試》
透過本書你將充分了解到測試人員的真正職能是什麼?敏捷團隊真的需要具有QA背景的成員嗎?“敏捷測試人員”到底意味著什麼?並從測試人員的角度記錄了敏捷軟體開發迭代的一個完整週期,並解釋了敏捷測試的七大關鍵成功要素。
7、《重構》
學習重構、找出程式碼的壞味道、構築測試體系、學習 JUnit測試框架、簡化方法呼叫、簡化條件表示式等等。透過本書,你將學會改進現有程式碼的所有方法,並讓它變為更具可讀性並避免bug的程式碼。
8、《測試之美》
本書主要介紹各種優美的測試方法、測試工具、測試案例,以及傑出的測試人員和結構良好的測試群體。各種從業人員透過了解本書提供的不同場景並借鑑以往成功的經驗可以提高測試能力和水平。
9、《.NET軟體測試自動化之道》
主要講解在.NET環境下編寫輕量級軟體測試自動化程式的實用技術。全書內容由Windows UI測試、Web應用程式測試和儲存過程及XML測試三部分組成,全面介紹瞭如何利用.NET平臺提供的一系列技術(而不是依賴於第三方的商業自動化測試工具),採用C#語言編寫輕量級的、功能強大的自動化測試程式。
10、《測之重器——自動化測試框架搭建指南》
從FitNesse 的使用講起,慢慢過渡到後臺元件的開發,以及FitNesse 與Jenkins 的持續整合測試的整合,並用三章分別講解RESTful、雲端計算平臺、手機UI的自動化測試,從而能讓大家理解如何在實際工作中執行自動化測試。當你讀完《測之重器——自動化測試框架搭建指南》後,你將能為企業搭建出一套自己的自動化測試系統。
網上搜尋到的閱讀資源: http://
總結:
自動化測試需要具備的主要能力:
第一,編碼能力,這個是逾越不過的坎兒。說到這裡可能會有朋友問難道效能測試不需要編碼能力嗎?答案是需要,但比起自動化測試來說門檻相對低點。其實對於一個優秀的測試工程師來說編碼能力是必備的技能。
如何提升自己的編碼能力也是不少朋友諮詢過我的問題,真心沒有什麼捷徑。我覺得就是要多練習多總結,我說的練習是真正的動手去做而不是看。我再苦口婆心一句:“沒有不起眼的磚,沒有看不到的框架,漂亮的樓房怎麼能屹立不倒”。
第二,邏輯思維能力。在有了編碼能力之後就能做自動化測試了嗎?顯然不能,因為自動化測試最終是希望建立一個框架或者平臺,這是一個大工程,一定要有較強的邏輯思維能力和設計能力才行。就好比,你會焊接技術但不代表你會設計汽車啊。所以自動化測試真正的難點在於設計思想,,培養能力和思維之後再學自動化測試就容易多了。
歡迎加入 51軟體測試大家庭,在這裡你將獲得【最新行業資訊】,【免費測試工具安裝包】,【軟體測試技術乾貨】,【面試求職技巧】... 51與你共同學習,一起成長!期待你的加入: QQ 群: 755431660
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2374766/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 你應該學會的Postman用法(2)-自動化測試Postman
- 一書學會自動化測試,從入門到入行
- 送給那些有程式碼基礎但仍舊不會學自動化測試的朋友們
- IT行業再給你一次選擇人生的機會,那麼你會選擇學什麼?行業
- Python 自動化測試 必會模組 UnittestPython
- 這一次,徹底幫你搞明白 ImageView ScaleTypeView
- 徹徹底底教會你使用Redux-saga(包含樣例程式碼)Redux
- 【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)AIFirefox
- 操作失誤不要慌,這個命令給你的Git一次反悔的機會Git
- 【前端】一文徹底學會Promise前端Promise
- 這一次讓你徹底瞭解 Android Frame AnimationAndroid
- 這一次讓你徹底瞭解 Android Tween AnimationAndroid
- 持續測試跟自動化測試的這些區別你知道嗎?
- 學會這些linux的“自動化”輕鬆搞定任務Linux
- 如何學習自動化測試?從手工測試到自動化測試的過程…
- 寫給那些會做不會說的測試員!“它”正在摧毀你的面試……面試
- 自動化測試可替代手動測試?軟體測試這個誤區你有嗎?
- 這一次,徹底掌握go modGo
- 這一次,徹底搞懂 Go CondGo
- 這一次帶你徹底瞭解前端本地儲存前端
- 會介面測試、自動化測試、效能測試的應屆畢業生工資能有多少?
- 如何選購掃地機器人?看完此文你會徹底瞭解機器人
- 15 年測試經驗,卷不動了,把機會留給後浪們吧,出去讀書試試看~
- 為什麼要學習自動化測試?這篇文章告訴你答案
- 自動化測試系列 —— UI自動化測試UI
- 這一次,徹底弄懂JS執行機制(Event Loop)JSOOP
- 學軟體測試必看的10本書推薦給你
- 這一次,徹底理解XSS攻擊
- 徹底學會 Go 指標 -- 就要學習 Go 語言Go指標
- 萬字長文帶你徹底學會攔截器與過濾器過濾器
- 自動化會提高測試覆蓋率,那測試覆蓋率是什麼?
- Python自動化測試怎麼學?軟體測試進階Python自動化,收藏這篇文章就夠了Python
- 自動化裝置測試與自動化測試的區別
- 這一次,徹底拿下計算機網路鏈路層!計算機網路
- 這一次,讓你徹底理解Java的值傳遞和引用傳遞!Java
- Redis的持久化機制你學會了嗎Redis持久化
- 給測試同學的成長書單
- 快速清理電腦磁碟?來給你Mac磁碟做一次徹底瘦身吧Mac