在其他崗位的朋友來看,測試工作的內容就是發現BUG、定位BUG、提交BUG、跟蹤BUG、回測BUG、復盤BUG等。
其中,發現BUG是這個崗位最基本的要求。
在沒有BUG或者發現不了BUG的時候,后續的工作也就無從談起。
但這對於新人而言,仍是十分困難的,日常工作過程中也經常會遇到以下問題:
- 一輪測試完成后沒發現幾個BUG,懷疑自己的測試質量
- 發現的都是很基礎的一些問題,沒有成就感
- 不確認是否是BUG,需要反復與其他人確認
- 自己測試完成后,還經常被別人發現其它遺留的缺陷
那么如何高效的發現缺陷呢?
結合日常的一些實踐與經驗積累,我們來整理下:
一、測試左移
盡早參與測試,盡早發現缺陷。
從需求階段就參與測試,可以讓測試人員更了解被測需求的背景以及設計原理。
從而發現設計缺陷,更能幫助測試人員在后需迭代測試階段發現較多設計與實現不符的缺陷。
雖然作為新人,剛開始參與需求分析,參與感較低,但不要排斥,努力去理解。
二、熟悉業務
除了一些比較容易發現的問題外,很多問題的發現都依賴與測試人員對業務的熟悉度。
另外,一些隱藏比較深的缺陷,需要測試人員抽絲剝繭,一層一層去過濾篩選,進而發現其中的問題。
所以這就要求測試人員要熟悉業務,成為最懂產品的那個角色。
相比與產品和開發,測試還是有很多優勢的:不僅懂業務而且懂實操。
測試作為一手使用者,也更容易從用戶視角出發去發現問題。
努力讓自己成為最懂產品的那個人,也有助於我們准確有效的判斷bug。
三、它山之石可以攻玉
當自身思路受到局限,可以去翻看一下別人提的BUG.
從其他人提的BUG中吸取一些經驗,了解別人的測試思維,豐富自己的測試思路,畢竟bug還是有共性的。
四、異常測試
還有一些問題經常出現在一些“邊界”場景或環境下,即非常規場景。
比如:邊界值、兼容性測試、並發測試、壓力測試、安全測試、組合測試、長鏈路測試等,這些場景發現缺陷的頻率是比較高的。
五、自動化測試
對於歷史相對穩定的模塊或接口,我們可以通過自動化測試,每日或定期對歷史功能進行構建,從而主動發現新需求、新改造對歷史功能的影響,從而發現問題。
雖然通過這種方式發現的問題較少、成本較大,但這種問題不全面測試的情況下是很難發現的。
六、了解開發套路
定期針對開發的缺陷進行總結,可以按缺陷類型、發生模塊等條件進行分析。
你會發現,開發生產BUG也是有規律的,那個開發那個階段更容易產生問題,在那些功能上問題產生的更多,甚至同一類的問題還會反復出現。
畢竟對開發而言,測試驗證還是存在的盲區,有些問題只有測試階段才能發生或者只有具備測試思維的人才能發現。
七、測試右移
產品上線后也是會有BUG產生的,那這個階段的問題,我們要怎么發現呢?
測試右移,通過對線上系統進行運維監控以及預警分析,在客戶感知之前,通過運維技術手段發現一些異常缺陷,然后快速修復。
無缺陷的產品是不存在的,對測試人員而言,在有效的時間內發現更多的缺陷就顯得異常重要。相信每個測試人員都有自己的一套方法,也歡迎大家多多探討。