因為我一直在分享自動化測試技術,所以,時常被問到:
功能測試想轉自動化,請問應該怎么入手?或者有哪些書推薦?
那么,接下來我就結合我的經歷聊一聊我是如何在工作中做自動化測試的。
我的軟件測試職業開始和大多數最普通的測試人員一樣,一開始在一家幼兒教育平台的公司做軟件測試,公司最開始只我人一位軟件測試人員,沒有任何流程和規范,但好在工作比較輕松,這就導致我有充足的時間學習各種測試技術和工具。
當你認為工作很閑時,這正是你可以有更多的時間投入學習的時候,但是,學習的內容一定要基於自己的工作來,這樣才能把學來的技術變成工作經驗。
當時,有一些機會在工作中做性能測試,於是,學會了使用LoadRunner和JMeter,有一次需要測試MySQL數據庫的性能,用JMeter搞了半天不知道怎么設置,結果叫一位開發的同事幫我過來很快就搞定了。
這讓我認識到開發知識對於測試工作的幫助,編程語言的能力會決定你測試技術的深度。
大概在2013年的時候,腳本語言變得越來越流行,我正糾結學習Python還是Ruby,后來,我被分到社區項目的測試工作,公司產品開始選用Python開發的,所以,我毫不猶豫的選擇了Python。
如果你不知道學習什么編程語言,那么就根據項目的開發語言來,這也會有助於你對測試的bug的理解。
接着,開始用Python語言和Selenium來嘗試做自動化測試。那時,關於Python版的Selenium並不多,在學習的同時我開始發表相關博客。
分享是學習新技術的驅動力,大多數時候我們很難堅持學一個新技術的原因就在於缺少反饋,不管是做內部分享或者是博客都是很好的反饋機制。
2014年的時候,由於項目的原因,開始使用Robot Framework測試框架,正因為有Python的基礎所以很快就理解了Robot Framework框架的工作原理,並可以根據項目的需要開發系統關鍵字。
掌握自動化工具的原理使用起來才能更加游刃有余,而這也需要你有一定的編程基礎的原因。
2015年隨着移動App越來越流行,乘着換工作的間隙,我開始學習了一個月的appium自動化工具,但工作中用不到后來就沒在繼續了。
后來,我開始針對另一個社區項目編寫Web UI自動化測試,前后做了幾個月,積累了一些經驗,開始嘗試設計Web自動化框架,當時主要還是針對Selenium API的封裝。
為什么我越來越有更多機會去做自動化相關的工作,當然,是我先學會了這項技能,然后,公司項目又比較適合去做自動化,所以,我就嘗試去做了,最后,這就變成了我的經驗。
但是,沒多久我會調到另外一個項目負責接公司口平台的測試,這個項目支撐公司內部不同的業務線,為了更加高效的保證接口的質量,開發設計了一套基於PHPunit的接口自動化項目,因為整個接口平台也是有PHP開發,所以,我開始嘗試用PHP編寫接口自動化測試。這個自動化項目非常高效的保證了接口平台的穩定性,我持續維護了兩年。
測試有時候必須跟着項目發展自己的技術,但也正是之前的編程基礎和自動化的經驗的積累,所以,才會很快的上手PHP接口自動化項目。
2018年我開始做全棧工程師,和團隊一起從零開發內部管理平台,后端用Django框架設計接口,前端用vue.js框架設計頁面,項目已經在整個公司得到應用。
這個階段跨度有點大,但應了我前面的一些思路,當你掌握的更多的技術,那么你也會有更多的機會繼續提升自己。
2019年從進入測試管理崗位,負責App團隊的測試工作,並幫助團隊搭建App自動化項目和測試平台。
在適當的年齡,選擇適當的崗位,盡量發揮好自己的優勢。
我的自動化測試之路,一路走來都離不Python語言,因為較早的接觸和使用Python語言,所以,我積累了大量基於Python語言做自動化測試的經驗,這里我將這些經驗錄制成了《python自動化測試九章經》精品小課。
該課程從測試的各個方面為你整理了Python當前最熱門的測試庫和框架,幫你建立自己的自動化測試技術體系,讓你在測試工作變得更加高效。