工作4年,抽空整理了一下,測試開發需要學習哪些技能?希望對你有幫助

關注公衆號【測試開發Guide】

回覆「java」:即可獲得java經典學習資料,帶你輕鬆入門java編程。
回覆「python」:免費獲取「python入門」高分好書,業餘時間偷偷變牛逼。
回覆「面試」:24個常見的測試面試題,你一定不想錯過。
回覆「書單」:獲取2020年軟件測試工程師必看的書單
回覆「測試用例」:獲取本人常用的 Excel 和 Xmind 測試用例模版
回覆「測試工具」:獲取 mac 和 windows 常用的測試工具
 

工作4年,一點點感想,做一下記錄。

 

先看目錄:

一、測試思想

二、測試工具

三、通識技能

四、業務模型

五、工程能力

 

文章有點長,可以先收藏。看完之後,別忘了點贊,點贊不是爲了我點贊,而是爲了你自己點贊,我希望你也能在這個行業越走越好!

 

假如你是個大神,看到了我寫的回答,認同與否,權當飯後談資即可,我們都不崇尚網絡暴力。

 

還有就是,書本上教的東西,我不會刻板的複製粘貼到這裏,我只說從業之後,我自己的思考。

 

一、測試思想

測試思想,紛繁複雜,不同的書可能寫的都不一樣。

 

工作多年一直指導我的測試思想主要有以下兩條:

1、整體大於細節!

世上沒有絕對完美無缺的系統,只要是人寫的代碼,線上都不可能沒有bug,我們測試工程師能做的只是把bug儘量減少,把風險儘可能降到最低。

 

1)測試要學會抓住重點,不要把寶貴的測試時間花費在糾結細枝末節上,有這功夫不如多回歸幾遍核心主流程。

2)要學會梳理系統框架和業務流程,Bug不單單存在於你所負責測試的模塊,也有可能存在於依賴的模塊上!

 

2、越早介入測試,越早發現問題,風險越小。

 

以上兩條,我都是有過血淚教訓的,爲此不少捱過casestudy!

 

總之,不管測試什麼樣的系統,測試的時候,還應該多去思考:你所負責測試的這個功能、模塊或系統,假如出現問題,那麼最壞的情況是怎麼樣的會對用戶造成多大的影響。爲了防止未來出現這種局面,當前有沒有什麼採取什麼措施?

 

 

 

二、測試工具

這裏我只列舉我用得比較高頻的,這裏我不會試圖去窮舉全部的測試工具,我相信我用的這些工具,大部分測試工程師也都在用。

 

假如說我專門去搜集測試工具,佔據很多篇幅,我覺得對於剛入門的新手測試工程師,同樣也是不太友好的,畢竟有選擇困難症的朋友,看到我的文章會困惑。

 

總之,假如你是個新手測試工程師,我覺得你能熟練掌握以下的測試工具,應付工作就綽綽有餘了。

 

抓包工具:fiddler、charles、Stream(iOS)、mitmproxy、anyproxy

接口調試:jmeter、postman

終端工具:xshell、iterm2、SecureCRT

數據庫:mysql、redis、mongo、hive

數據庫連接工具:navicat

編程語言:Python、Java、JavaScript

IDE:PyCharm、Idea、VSCode、微信開發者工具

電腦操作系統:windows、linux、(macOS)

手機操作系統:iOS、Android

自動化:Appium、ATX、Selenium

效率工具:Excel、Alfred(mac)、Wox(windows)

“互聯網辦公軟件”:wiki、jira或禪道、jenkins、gitlab

“升職加薪利器”:PPT

“裝逼神器”:markdown

 

順帶提到一點:測試工具只是輔助測試的一個手段,目的是要提高工作效率,方便我們快速、持續交付。

 

測試工具最終一定是要落地到業務測試上去的,不要爲了學測試工具而學測試工具,不要爲了開發測試工具而開發測試工具,假如不能給業務帶來價值,那做這麼多的意義又在哪裏呢?

 

另外,假如說團隊裏面真的必須讓你負責開發某個測試工具,真的不要馬上“下筆如有神”,寫代碼很容易,但是設計好的架構非常難的。正確的做法是,先調研大公司有沒有相關的解決方案,並看有沒有成熟的開源框架可以解決當前的問題。能開奔馳寶馬,還要什麼自行車。

 

學習優秀的測試工具,不僅要會用,還要懂得架構設計思路和框架底層的實現原理,經驗都是這樣慢慢積累的。

 

假如你做出來的測試工具,只有你自己一個人用,那麼你想怎麼設計都可以;

 

假如你做出來的測試工具想要服務於整個業務部門甚至整個公司,那你還得考慮你所設計的測試工具的易用性和容量。

 

測試工具還有一個重要的要素:測試標準化

 

說通俗點,就是要有一些關鍵指標去評估你測試的系統的好壞。

 

如果沒能輸出一些有用的測試指標,又怎能證明你設計的測試工具是有用的呢?

 

測試進階的道路上,總會有人不明白這些道理。知識學不完,反倒自己先自滿了。

 

PS:我一般都是從testerHome和Github去挖掘好用的測試工具,並且嘗試着在巨人的肩膀上二次開發

 

三、通識技能

很慶幸,我近兩年去的每一家公司,都是有開發的代碼權限的。這樣,我能夠學到不少開發的技術,能夠從diff代碼中,大致判斷測試範圍和迴歸範圍。

 

作爲一個測試工程師,不能只是處在黑盒的角度去思考問題,必要的時候,需要掌握一定的代碼能力,站在白盒的角度去評判代碼的質量。這樣才能更有效的保證質量。

 

我把python作爲了我的第一門編程語言,最開始是跟着廖雪峯官網上的教程去學習。當入門之後,又開始學習爬蟲和web。

 

當你學會一門編程語言之後,再去學別的編程語言,會發現都是有共通的地方。

 

 

四、業務模型

測試只是一個崗位,你除了學習崗位相關技能之外,肯定還是得要特別熟悉公司業務的。

這個只能慢慢積累。

另外,儘量不要跳槽太頻繁,試想一下,每年都跳槽的人,他們又怎麼可能熟悉業務呢?

面試的時候,面試官很多時候都是從你的簡歷上,去問一些你的項目經歷。試想一下,你不熟悉你測試的業務,你又怎麼能答得好這類問題呢?

 

五、工程能力

測試工程師的工程能力也是很重要的,工程能力在我看來,就是解決問題的能力。

遇到問題,你能知道排查的步驟,能夠自己定位到bug的位置,甚至知道怎麼去改。久而久之,你在團隊裏面的影響力會越來越大。

▼▼▼

 

以上,是我幾年測試職場的一些經驗,如果有不對的地方,歡迎在下方留言。

希望能夠對大家有所幫助。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章