給剛入門的測試開發工程的一點建議

我是Dzreal,工作三年的測試開發工程師。以下是我在測試工作中不斷總結實踐的,測試工程師需要具備一些軟實力。

 

先看目錄:

一、情商

二、溝通

三、責任心

四、流程控制

五、風險意識

 

這個話題,我相信80%的工程師都不會特別重視,因爲這個東西說起來很虛,技術上有那麼多東西要學,哪有時間提升什麼軟實力啊!

 

真香警告:你到底硬不硬,不是你的硬實力決定的,而是你的軟實力決定的。

 

 

假如你的技術能力很紮實,你到35歲乃至65歲之後都還有能力寫代碼;但是你的軟實力不行的話,可能你到30歲之後,你就很難在這個行業進步了,你周邊剛畢業的同事都在跟你做同樣的工作,你又拿什麼跟他們拼?你頭髮還剩多少?

 

在這裏,我分享幾個我親身經歷的小事,藉此跟大家聊聊這個話題,大家也就當聽聽故事。行文不易,假如對大家有幫助、有共鳴的,歡迎 收藏/點贊/在看/分享。

 

一、情商

要聽話,千萬不要自大!

 

曾經因爲自大,我給自己和團隊挖了一個天坑!

 

記得就在畢業第二年的秋天,因爲自己會寫一些ui自動化的腳本,被劃分到部門的自動化效能團隊一起做一些測試工具。

 

在此之前,做過一些app的測試,覺得app的埋點測試,手工測試的話,耗費很多精力,但是因爲埋點這塊又一直出問題,就想做一個工具來“造福”業務測試的同事。

 

當時帶我一起做這個項目的領導是剛入職的,對這塊也不是很瞭解,也是硬着頭皮跟我一起做這個工具了。

 

方案很快就定好了,採用app抓包的形式,將埋點數據進行攔截,轉發埋點數據到測試平臺,測試平臺做埋點規則校驗,再把結果報告展示到測試平臺web頁面上。

 

當時抓包工具是用anyproxy做二次開發,我在項目中主要負責前端採集埋點數據並轉發http請求。後端是我的領導開發。

 

一開始,領導就囑咐我說,前端的工具,做成命令行就行,越簡單越好,做成可配置、可移植的,以後有可能的話,做成平臺化的工具。

 

我當時真的很自大,真的要膨脹到爆炸了。沒有明白設計爲先的原則,也懶得去體會領導的用意,就自己開發自己的。

 

我心裏只考慮到,團隊的測試同學多是外包同學,給他們用命令行,多難用!考慮到易用性,當然做一個客戶端界面(pyqt5),點點點就更方便啦!

 

我幾乎通宵做了兩個晚上,有一天代碼提交出了問題,又修改到了後半夜,那時候真的是感覺很“充實”,做出來成果之後,還發朋友圈自嗨!

 

結果,到演示的時候,可謂瞬間爆炸啊……

 

因爲客戶端做的太臃腫了,中間出了不少交互的bug,簡單的功能被我做得那麼複雜,而且距離交付的時間也越來越近,領導瞬間都氣炸了,會上直接就發飆了。

 

會後,我又得按領導的要求把功能砍到最精簡的樣子,當時感覺既挫敗又委屈。

 

後來,工具還是交付並且推廣了,但由於安裝運行環境很麻煩,很多同事都不愛用,非但不能幫助業務測試的同學,還給他們造成麻煩,最後工具就沒有推廣起來

 

真的後悔自己因爲自大,浪費了自己和大家那麼多時間。

 

 

 

二、溝通

能羣聊就不要單聊,能文字就不要語音!

 

剛開始進入互聯網公司不久,我就接手了一個特別烏龍的需求。

 

這個項目,從活動運營,到開發,到測試,都是剛入職不久的新人。

 

一開始這個只是運營領導一句話的需求,沒有產品經理跟進,沒有經過需求評審,單純就是口頭溝通,就搞起來了。

 

我當時還是很負責任的,找當事運營也確認了很多遍需求,但是完全都沒有意識到這樣的溝通很低效。

 

沒有溝通羣,全靠口口相傳;需求改了很多遍,但是需求文檔一直是兩行字的需求,全靠猜。

 

最後我們終於品嚐到了因爲溝通問題滋生的惡果!

 

由於我對需求的理解存在偏差,我給開發提了一個錯誤的“bug”,這個“bug”改完之後,直接使功能的實現背道而馳!甚至影響到了用戶流量!

 

在提這個bug之前,我也找運營同學確認過bug的有效性,當時明明都確認這個“bug”是有效的。

 

但是出現線上問題之後,我卻成了衆矢之的,運營同事當場就“不承認”這個bug是找她確認過的,大家都一致認爲這個bug就是我自己給自己“加戲”!

 

我真的感覺跳到黃河都洗不清了,我甚至拿不出任何證據給自己洗白,比竇娥還冤!

 

測試背鍋真的很正常,但是我卻因爲溝通問題,背了我不該背的鍋!

 

從那時起,只要是未經過需求評審的一句話需求以及沒有詳細文字版prd的需求,我都不接;只要是需要我測試的需求,我都會主動拉羣,有事都在羣裏溝通,不再單聊。

 

後來,再也沒有出現過這類的問題。

 

 

 

三、責任心

責任心是測試工程師的底線!

 

我在找工作面試過程中,有一個問題被問到過很多次:“你印象最深刻的bug是哪一個?”

細細想來,我碰到過的bug,絕大部分都是顯而易見的bug。

 

我還經常抱怨:“開發的代碼怎麼寫得這麼爛,連主功能都沒走通!能寫出這些bug,都不是技術問題了,真的就是態度問題!”。

 

但就是這麼簡單的bug,在我們的團隊裏,還是會時不時流露到線上!線上的問題,你能怪開發麼?這就是測試工程師責任心的問題!

 

試想假如你負責的項目,線上出現這麼“沙包”的主流程都過不了的問題,你再怎麼辯解“測試環境中明明是好的啊”,都顯得好蒼白無力啊!最尷尬的是,線上出問題之後,你再在測試環境中嘗試復現,竟然還穩定復現~

 

嗨!兄弟,這就是漏測!

 

相信開發兄弟的水平就是對自己作爲測試工程師的責任心的侮辱!

 

自己寫過測試用例,一定要經得起用例評審;自己寫的測試用例,再怎麼噁心都要一條一條執行完畢!不要拿環境問題和測試時間緊迫當自己漏測的藉口!

 

你一年幹得再出色,出現一兩個線上bug之後,所有出彩的地方都會被掩蓋,責任心就是測試工程師的底線!我們要時刻堅守住自己的底線。

 

四、流程控制

要敢於對不合理的流程說不!

 

以前手工測試app埋點時,有一個不合理的流程是:測試完埋點之後,還要手寫一份測試報告,把抓包的數據填充到測試報告中,然後再寫一份郵件,抄送給BI部門。

 

維護這個測試報告的成本十分高,起碼佔用了50%的測試時間,完了這個測試報告發給BI部門,但根本沒人會看!

 

這個測試報告的作用,可能就僅僅是測試人員完成埋點測試的“打卡”操作,並不能給埋點質量的提升帶來任何幫助!

 

我當時按這個流程測了2個版本之後,再也忍受不住這種噁心的流程。

 

 

我當即找到了BI的負責人,溝通取消這個流程,因爲這個流程對於測試人員來說就是一種羈絆,我們只專注於寫這個測試報告,卻忽略了測試埋點的意義,總感覺時間不夠用,但是埋點測試的質量又得不到提高。

 

後來,經過妥善溝通,我們取消了這個測試報告,我們終於可以不用再忍受這個噁心的流程!

 

從此,埋點的測試不再只是爲了完成任務而完成任務,我們可以花費更多時間去驗證埋點的數據格式和埋點策略,埋點測試的質量和效率得到很大的提升。

 

五、風險意識

問題越早發現,風險越小!發現bug,一定要提交bug單留存並追蹤到底!

 

之前有一個項目需要和別的團隊進行合作,我在測試環境中發現了一個非本版本功能改動的bug,當時憑藉經驗,以爲是合作團隊的改動引發的問題,並且當時我自己的測試需求還忙得不可開交,就當了回甩手掌櫃,把問題丟給合作團隊的測試同事去跟進了,然後我就不管了,也沒有提bug單。

 

沒想到那個測試同事當時休假了,事情一直得不到妥善解決。

 

憑藉經驗,我也僅僅以爲是環境或者賬號的問題,也並沒有重視這個問題。

 

等這個同事回來的時候,時間已經接近發版了,這時才發現這個問題根本不是他們的問題,而是我們連接他們服務的時候,這個版本的傳參有問題,但是由於我並不知曉這個改動。

 

我發現這個問題,一沒告知我們的開發,二沒提交bug單,除了我和合作部門的測試之外,其他人對這個bug都不知情......導致這個bug差點就流露到線上去。

 

現在想想都還後怕!

 

任何bug,不管多小,都要bug單留存,並且要追蹤到底!

 

▼▼▼

 

分享的幾個我測試生涯中的案例,也是想強調軟實力(情商 + 溝通 + 責任心 + 流程控制 + 風險意識)的重要性,其實還有諸如管理能力、演說能力也都包含在軟實力裏面,具備這些軟實力能讓你在職場走得更遠!

 

延伸閱讀:寫給工程師的十條精進原則

https://tech.meituan.com/2018/08/16/10-principles-for-engineers.html​

 


長按識別下方二維碼關注公衆號

關注我的微信公衆號【測試開發Guide】,

 

回覆「java」:即可獲得java經典學習資料(我花200元買的),帶你輕鬆入門java編程。

回覆「python」:免費獲取「python入門」高分好書,業餘時間偷偷變牛逼。

回覆「面試」:24個常見的測試面試題,你一定不想錯過。

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