面試了20個軟體測試崗後,我終於找到了我屢屢失敗的真正原因……

職場 發佈 2020-01-15T12:51:33+00:00

職場如戰場,既是挑戰自己的無窮潛力,又是與企業的對弈,更是千軍萬馬過獨木橋的較量,即使你是"天子驕子",不過橋一樣沒有工作,沒有飯吃,所以孰勝孰敗,只取決於面試的剎那間。

職場如戰場,既是挑戰自己的無窮潛力,又是與企業的對弈,更是千軍萬馬過獨木橋的較量,即使你是"天子驕子",不過橋一樣沒有工作,沒有飯吃,所以孰勝孰敗,只取決於面試的剎那間。

古人云:"知彼知己,百戰不殆;不知彼而知己,一勝一負;不知彼,不知己,每戰必殆。"由此可見,無論是古代還是現代,想打一場勝仗,想謀一份稱心如意的差事,想討一個升職加薪的機會,清楚他人的實力和了解自己的實力,事先做好充足的準備是極其重要的。

對於一名專業的測試員而言,自動化測試項目的全部實戰,從獨立腳本的研發到業務場景腳本再到最後的自動化測試框架和持續集成,都有完整的成果物提交,發現問題,並能針對各種不同的工作問題進行總結和分析。

但是如何把這些工作成果在面試中講出來呢?這可是大部分測試員的通病!

雖然不能說天生嘴笨,讓幹活的話,學習實踐後還是很有信心的,覺得讓自己獨擋一面來做事也還是可以完成的。但是這些"工作能力"怎麼在面試的時候講呢?總不能說自己做過自動化測試,這麼簡單一句吧!

聽聽15年資深測試工程師Lucy老師分享的軟體測試面試經驗,准能幫助你快速找到好工作,offer拿到手抽筋:

(Lucy老師即時貼:這是很多技術人員都遇到的問題,會做不會說!如何全面表達自己的自動化測試能力?

1、明確企業用人的目標,尤其是對能力的評價指標

2、有很強的學習能力,快速解決問題能力,團隊協作能力,穩定性以及良好的可塑性.....

3、這些能力在面試表達中不用非得都要體現,但至少前3點是比較重要的能力,應該要考慮在項目實踐和工作的哪些環節能體現出自己的這些能力?

4、舉例:快速解決問題的能力,那麼就是先要搜集整理在自動化測試中遇到的各種各樣的問題。比如如何提高自動化腳本的測試覆蓋率?當腳本出現錯誤時,如何快速定位問題並修復?如何設計並實現的自動化測試框架等等。這些問題不需要考慮順序,也不需要考慮有無關聯性,只要是一個不容易解決的問題,能體現我們能力的深度和難度的最好,不要找一些過於簡單的問題,否則無法體現競爭力。

5、一般圍繞一個方面的技術至少要準備3個問題。問題準備好之後,就需要搜集該問題相關的成果物。比如要說明如何設計並實現自動化測試框架的問題?需要搜集在Python全棧自動化測試實戰中所有相關成果如下:

①自動化測試框架需求

②自動化測試框架設計類圖及流程圖

③自動化測試框架分層結構圖

④自動化測試框架版本規劃設計

⑤自動化測試框架各個版本腳本程序

⑥設計編寫自動化測試框架過程中出現的各種問題

自動化測試框架工作總結

在以上成果物的基礎上,進行能力表達的梳理。

問題回答示範:我負責的項目是在自動化腳本積累到一定的程度後才開始往自動化測試框架進行移植和實現的。剛開始的自動化測試主要目標就是把我們項目中常用的功能和業務場景的腳本儘快調試通過,並且進行參數化設置,而且對測試結果通過斷言技術進行各種驗證,把測試結果也用腳本存入測試報告文檔中。

這樣積累了一段時間後,發現每次發布版本後,要結合進行自動化回歸測試的時候就越來越麻煩了。一個方面我們得和開發溝通半天發版的內容涉及哪些功能模塊,這些功能模塊又對應哪些自動化腳本,這些腳本的執行順序有些也還是有要求的。我們就得有專門一個人盯著得一個一個的進行腳本的執行調用,雖然執行本身是腳本來完成的,但是執行哪些腳本脫離不了人工。

後來我們就一塊討論設計了一個自動化測試框架,這個框架我們定義了5層(配置層、腳本層、數據層、測試報告層、驅動層,在面試時可以拿一張紙一邊說一邊畫更清晰一些)。其中最複雜的是配置層的設計和驅動層的實現。

我們的配置層主要是來控制此次回歸哪些自動化測試腳本以及腳本的執行順序和執行狀態等問題。這樣只要人工把這個配置文件中腳本的狀態和順序調整好,其他的調用執行工作就由框架驅動層自動去調用完成了。就完全不需要人工參與了。

同時為了提高自動化測試的執行效率,對於腳本之間沒有嚴格執行順序要求的內容,我們部署了多台自動化測試機,同時運行。這樣可以在下班後,同時並行。第二天來的時候只要打開報告層去查看就可以了。

後來我們為了優化提高bug的反饋效率,在框架中增加了提取bug報告的功能,也就是通過框架自動執行過程中加入判斷邏輯,對於測試腳本未通過的內容進行提取,提取出對應的測試腳本的序號和名稱,以及哪個測試方法報錯。把這些內容單獨提取出來,增加了一個bug報告層,把這些內容放入bug報告裡面,這樣就不用人工去篩選bug了,比以往的效率還要更高一些。

其實自動化測試框架我們也是在持續的進行優化改進,因為bug報告也需要我們到伺服器端打開來再看,而且測試人員還需要進行一些分工驗證,一般誰寫的腳本誰來確認bug?為了減少這一部分bug分配和確認的工作量。我們又增加了郵件發送技術,也就是在配置文件中寫明對應腳本負責的測試人員,然後在框架自動執行的過程中,通過郵件發送技術把對應的bug信息自動發給對應的測試人員。這樣就不用測試人員自己去找自己對應負責的bug了,工作效率和準確性又大大提高了很多。

具體發郵件使用的技術是......

在框架研發和設計中也遇到了很多的技術問題,比如為了找到執行出錯的用例腳本,我們.........

有了這個自動化測試框架以後,節約了很多測試工作

1、不用人工參與自動化測試執行了,只要把配置文件設置好就可以了

2、測試中出現的問題都有明確完整的記錄,防止人執行時的遺漏

3、通過自動發送郵件進行bug確認,節約了人工分揀的工作量

4、可以在非工作時間,多台機器同時自動化測試執行,大大提高了回歸的效率和覆蓋率

通過我們設計研發的這個測試框架,自動化的測試回歸工作持續有效的不斷開展,我們也希望後續的框架改進能適應各種不同類型項目,這種框架也是我們持續改進的目標。)

總結:

面試並不可怕,只要保持實力,信心滿滿,把平時的專業技能,工作經驗組織好語言表達出來。曾經的屢屢失敗算什麼?一次次的努力,會不斷增加自己的籌碼,有這種精衛填海般的堅持,有這種對軟體測試行業的執著,成功可能會遲到,但早晚會來報到!

請關注+私信回覆:「測試」就可以免費拿到軟體測試學習資料和面試題庫。

關鍵字: