摘 要:2010年以前很多企業并沒有軟件測試崗位,都是開發自己測試直接交付給客戶。從而開發人員一邊開發、一邊測試往往自測都是沒有問題,而大多問題流落到客戶現場。近些年隨著軟件行業的蓬勃發展,越來越多的軟件企業重視軟件測試的工作。因為企業重視,所以軟件測試得到很好的發展。軟件測試在項目中發展成為一個不可忽視的環節、軟件測試人員地位也中不斷的提升。所以越來越多的人員愿意加入軟件測試行業,那么中小型企業的軟件測試應該具備哪些素質呢,我們一起進行探析。
關鍵詞:軟件測試;軟件測試員;素質探析
1.軟件測試人員應該具有扎實的軟件測試技能和計算機相關知識
每個行業的都有自己的理論知識、軟件測試行業也不例外。軟件測試工作不同于軟件開發,開發人員只需要掌握一門或多門開發語言的技能。例如:C#工程師只需要數量的掌握VS C#語言、Java只需要掌握JAVA語言、DBA掌握相應的數據語言(SQL Server、Oracal等)。軟件測試人員不能單一掌握一門知識,因為軟件測試涉及比較廣。針對不同的軟件需求,對于測試人員來說都是學習的過程。測試人員需要扎實的掌握:軟件測試的基本知識、測試計劃、測試用例、測試方法(黑盒測試、白盒測試、灰盒測試、功能測試、性能測試等等)、測試步驟、測試報告等等。掌握這些基本的測試知識,才能在工作中處理各種測試問題。另外還需要會熟悉使用各種BUG工具、例如常用的BUG工具:惠普的QC、Bugfree、Bugzilla、Jira 、禪道-BUG管理、Mantis等等。掌握以上遠遠不能算是一名合格的測試人員,因為你在測試中會遇到一些測試腳本、測試數據的模擬等,所以你還需要掌握測試以外的知識,如:數據庫知識(增、刪、改、查、復雜的存儲過程測試等)、計算機網絡知識、計算機硬件、軟件開發、數學邏輯、統計、其他中間件等。這些只是對于測試人員來說必不可少,只有多掌握知識,才能夠使在測試過程中不至于是一個“盲”測。
2.軟件測試人員應該具備很高的情商和良好的溝通能力
軟件測試工作是一個發現問題一個解決問題的過程,這個過程中是測試人員與需求方(項目經理或客戶)、開發人員溝通的過程。溝通能力作為一項特別重要的技能,在團隊工作中起著舉足輕重的作用。作為測試人員,為了在解決BUG上提高效率、避免不必要的溝通。我們應該在提交問題的時候,做到一、問題描述簡單明了,TA(項目經理、開發工程師)可以看得懂。自己提交的問題,自己看得懂不行,要盡可能的讓項目經理和開發人員明白你在說什么。二、圖文并茂,方便TA(項目經理、開發工程師)了解。有些時候文字描述不清楚,不如直接增加一張或多張圖片。圖片可以快速的說明問題,便于開發人員的了解。以上可以節約很多的溝通時間,有些時間還是需要和開發人員溝通BUG。當然會遇到測試與開發人員溝通上的分歧,假如出現分歧測試人員應該嘗試說服對方。如果嘗試說服失敗,在不傷和氣不影響正常的工作情況下,停止溝通避免浪費無效的溝通。與項目經理、開發一討論,由項目經理確認問題是否真的是問題、是否需要修改。測試人員不管在任何情況下,保持很高的情商很重要。測試人員在溝通中扮演著和平天使的職責,在必要的時候因為工作的溝通爭執不下,測試人員需要快速的分析問題所在,聽取開發人員的想法,心平氣和的交流。測試人員掌握與開發人員溝通,同時也要能夠與客戶交流。因為兩類人的交流方式不一樣,所以測試人員應該快速的反應,以不同方式表達出來。
3.軟件測試人員應該具有堅強的耐心
軟件測試的工作是一個重復性很強的工作、在枯燥無味的工作中需要堅強的耐心。俗話說成功貴在堅持,所以測試工作一定要有堅持的信念。在測試的過程中,很大可能遇到一些難以重現的問題,需要花費很多的時間去分析和識別。然而如果測試人員不具備堅強的耐心,往往會放棄很多不易出現的問題。造成問題遺留在系統中,終究會爆發造成不可挽回的損失。耐心,對于每一個測試人員來說都是一項不可缺少的素質。
4.軟件測試人員應該具有團隊協作的精神
軟件測試是一個團隊的工作,相信你不是一個人在戰斗。在這個團隊中有開發人員、項目經理、數據庫工程師、配置人員等等,每個人都有優缺點。測試人員要善于發現別人的優點,激發每個人在團隊中的作用。同時自己要快速的融入團隊,在團隊的工作中一定要有原則:就事論事,不進行任何的人身攻擊。與團隊中的成員融洽的相處,激發和發揮自己最大的潛能。體現出自己在團隊中的價值,與團隊中的每一位成員一起進步。在團隊工作中,切記:不要擺高姿態,測試為王的樣子。這樣會團隊成員對你有看法,所以事事都要有依據,有理可依、有據可憑。在團隊中測試人員也起到承上啟下的作用,一邊聯系著項目經理、一邊聯系著開發人員。有的時候好的測試人員,在團隊中將會發揮很大的作用。
5.軟件測試人員應該具有“懷疑一切”的精神
G.J.Myers在《The Art of Software Testing》(軟件測試之藝術)中指出:測試是為了證明程序有錯,而不是證明程序無錯。從用戶的角度,軟件測試就是“為了發現錯誤而執行的過程”。在軟件測試過程中,測試人員要有懷疑一切的精神。測試人員提出一個問題,開發人員總是會有很多的解釋。但是測試人員要有自己的分辨能力,同時表示懷疑,直到自己去確認和驗證。在經過單元測試、集成測試、系統測試幾輪測試之后,沒有發現系統任何問題。不能因為沒有問題,而證明程序沒有問題。此時測試人員應該換一種思路,始終懷疑程序是有問題。只有帶有懷疑的精神進行測試,才能夠發現更多的問題。例子:我們公司的QA,經常和測試人員說空下來的時間多測試測試。每天要多次詢問測試人員是否有問題,是否有問題?有時候想一想,他也是帶有懷疑的精神問問題。有一個原則在測試方面同樣比較適宜[8020原則],百分之八十的問題在百分之二十的地方發現。在測試中多問幾個為什么,這樣做有什么好處等。
6.軟件測試人員應該具有不斷的學習、不斷總結
在這個快速發展的信息化時代,必須要不斷的學習,不能停滯不帶。只有不斷的學習,才不會被輕易的淘汰。以下是軟件測試人員需要提高的測試能力:
1、 提高自己的測試理論知識:軟件測試的理論知識可以在書本上學習、也可以登錄測試的網站、百度文庫等學習。學習軟件測試的理論概念、測試的目的、白盒測試、黑盒測試、灰盒測試、靜態測試等測試技術。不斷的學習一些新的技術、例如性能測試、APP測試等。
2、 提高自己的測試的方法及測試思路:做任何事情,講究的是方法和策略。好的測試方法,可以提高很多的效率。在接到測試任務之后,要三思而后行。先思考在動手,計劃一下測試方案及方法。有些測試人員,接到任務埋頭就干。經過很長時間的努力是完成了工作,但是工作方法不對。明明可以3步完成,因為沒有思考造成10步甚至更多,工作效率不高。所以我們自做測試之前,要勤于思考測試的方法。
3、 提高自己的總結能力:測試人員要經常的做一些總結,通過總結可以對自己的工作進行一個回顧分析,看看那些做得不錯,下次還繼續這么做。那些工作還有改進的余地。對自己能力的提高是一個很好的幫助。另外軟件測試人員會編寫很多的文檔。例如:測試計劃、測試方案、測試報告、問題列表、問題分析等等,總結對于每個測試人員來說都是一項不可缺少的軟技術。通過一些總結,可以提高自己的寫作能力和表達能力。
軟件測試人員還有許多的素質需要具備,在漫長的測試道路上讓我們一起共同進步。爭做一名合格軟件測試人員,交出客戶滿意的軟件產品而努力奮斗。
參考文獻
[1]程鋮 淺談軟件測試人員應該具備的基本素質 《科技致富向導》 2014(6):136-136.
[2]IT985博客 一名優秀的測試人員應該具備哪些素質? 網址:http://www.51testing.com/html/10/n-3713610.html 2016-11-17.
[3]張向宏 陳淥萍 等 軟件測試理論與實踐教程 人民郵電出版社 2009.
作者簡介:謝彭(1991.1.11----)、男、計算機操作員高級工、主要研究方向:軟件測試。