測試人員應該具備怎樣的軟技能測試人員在軟件開發生命周期中,除了獨立完成測試任務以外,還需要和項目的不同利益相關者進行合作,包括項目經理、開發人員或者用戶等。測試人員需要向項目經理/測試經理反饋測試進度、產品質量等信息,同時還需要從項目經理/測試經理處獲得項目的進展和狀態,例如:項目內容或進度的變更。在測試過程中,無論是提交缺陷還是文檔評審,測試人員都離不開和開發人員的合作和溝通。測試人員還可能需要從客戶那里了解用戶是如何使用產品的,或者因為產品的質量問題,從用戶那里得到反饋甚至抱怨。因此,在復雜的測試工作環境中,測試人員除了必備的專業知識和測試技能以外,還需要具備一定的軟技能。
軟技能實際上是指那些“不易看見的技能”,是一個人“激發自己潛能和通過贏得他人認可和合作放大自己的資源,以獲得超越自身獨立能力的更大成功的技能”的總和。
軟技能其實是情商 EQ(Emotional Intelligency Quotient)的社會學術語,它由一系列能夠反映個人特質的要素組成,這些要素包括一個人的人格特質、社交能力、溝通能力、語言能力、個人行為習慣、待人友善、積極樂觀等。軟技能與硬技能(那些作為工作硬性要求并能夠部分反映一個人智商的能力)是互補的。軟技能(情商)可在一個組織的成功中扮演非常重要的角色??偟膩碚f,軟技能一方面體現在工作和生活中解決問題、處理問題的能力;另一方面體現在通過贏得他人認可和合作,放大本人資源以獲取更大成功的能力。
測試人員在軟件開發生命周期中,除了獨立完成測試任務以外,還需要和項目的不同利益相關者進行合作,包括項目經理、開發人員或者用戶等。測試人員需要向項目經理/測試經理反饋測試進度、產品質量等信息,同時還需要從項目經理/測試經理處獲得項目的進展和狀態,例如:項目內容或進度的變更。在測試過程中,無論是提交缺陷還是文檔評審,測試人員都離不開和開發人員的合作和溝通。測試人員還可能需要從客戶那里了解用戶是如何使用產品的,或者因為產品的質量問題,從用戶那里得到反饋甚至抱怨。因此,在復雜的測試工作環境中,測試人員除了必備的專業知識和測試技能以外,還需要具備一定的軟技能。下面介紹測試人員在測試過程中需要具備的軟技能。
懷疑精神
發現缺陷是測試過程中的主要目的之一,因此,測試人員對被測產品要有懷疑精神,即懷疑測試對象存在缺陷或者是無法正常工作的。很難想象,缺乏懷疑精神的測試人員能夠有效地發現軟件產品中的缺陷,從而達到盡量多地發現缺陷這樣的目標。在靜態測試過程中(例如:評審),無論是系統的需求規格說明還是設計規格說明,測試人員都應該以懷疑的態度去對它們進行分析和評估;在動態測試過程中,也同樣需要懷疑精神,這樣才能更有效地發現缺陷。同時,懷疑精神不僅僅適用于開發活動的交付物上,同樣也適用于測試團隊的交付物上,例如:對于測試團隊設計的測試用例,也不能盲目相信它們不會存在錯誤和缺陷,這些測試用例同樣需要經過項目利益相關者的評審,例如:開發人員或客戶,在測試執行的時候,發現實際結果和預期結果不一致的時候,首先需要確保測試用例是否正確,同時確保測試執行的過程、數據、操作等沒有問題,然后確認是否是測試對象沒有實現規格說明中要求的功能或者不一致,這都需要測試人員具有懷疑精神。如圖 1:軟件測試人員職業能力框架圖。
圖 1. 軟件測試員職業能力框架圖
好奇心
好奇心是人們希望自己能知道或了解更多事物的不滿足心態。好奇心不僅是要對某一事物感到疑惑和好奇,還要繼續思索以求明白事情的真相,所以好奇心是創造的出發點、動機和推動力,也是產生無窮毅力和耐心的源泉。測試人員尤其是參與集成測試和系統測試的人員需要了解很多知識,他們不僅要掌握軟件系統的多個功能模塊,甚至是整個系統的需求和設計,同時還要從用戶的角度思考系統的使用方式。如果測試人員只關注很小范圍內的信息或知識,那么他不會成為一名優秀的測試人員。測試人員對整個產品和用戶環境要充滿好奇心,才能驅使自己不斷地學習和進步,掌握更全面的知識。
另外,除了懷疑精神,好奇心也是測試人員找到更多缺陷的基礎。當測試人員在測試軟件系統的過程中,碰到了一個異常的系統表現行為,對于有好奇心的測試人員而言,他會深入研究為什么會出現異常行為,并通過不斷地分析和探索,找到其中的原因,例如:由于軟件產品中存在的隱秘缺陷,在偶然觸發的情況下導致了這樣的異常行為。而對于沒有好奇心的測試人員,可能就會遺漏了這樣的缺陷。
創新能力
創新能力是運用知識和理論,在科學、藝術、技術和各種實踐活動領域中不斷提供具有經濟價值、社會價值、生態價值的新思想、新理論、新方法和新發明的能力。創新能力能夠根據已經存在的基礎事物來創造一些新的特別的元素。創新能力可以通過一些好的實踐來進行提高。在日常工作中,對問題的思考角度能夠影響一個人的創新能力,當出現問題的時候,要嘗試從不同的角度來分析問題,這樣才能創造性地解決問題。還有一些好的習慣都有利于提高創新能力。當人處于比較放松的狀態下、全面閱讀盡可能多的知識、認為每個問題都是特別的、推遲做出決定和對新奇的想法保持開放的態度都有助于創新能力的提高。創新同時也意味著要打破常規,避免重復性的思考。想要獲得更好的創新能力,就不能害怕嘗試新鮮事物,也不要對一個想法迅速做出肯定或否定的判斷。從測試計劃一直到測試結束活動,整個測試過程將會遇到各種各樣的問題,這個時候就需要測試人員充分應用自己的創新能力,創造性地解決這些問題,以幫助項目獲得更大的成功。
分析能力
分析能力是指把一件事情、一種現象、一個概念分成較簡單的組成部分,找出這些部分的本質屬性和彼此之間的關系單獨進行剖析、分辨、觀察和研究的一種能力。隨著軟件系統和產品功能的不斷增強,軟件產品變得越來越復雜,這就使得測試活動也變得越來越困難,因此,對測試人員的分析能力要求也越來越高。測試過程是一個不斷計劃、分析和評估的過程,測試人員沒有良好的分析能力,就無法高質量地完成測試任務,例如:測試計劃和控制階段,測試團隊需要分析測試的范圍、測試采用的技術和方法、測試的工作量、測試的風險等,根據測試過程中得到的信息和狀態,分析計劃和實際進度之間的偏差,調整測試資源、測試優先級和測試計劃等;在測試分析和設計階段,測試人員需要不斷學習和了解被測試對象的測試依據文檔(例如:需求規格說明),對被測試對象進行詳細分析,確定如何采用測試計劃中定義的測試技術和方法來設計相應的測試用例;在測試實現和執行階段,根據測試執行過程中發現的失效,分析其失效的影響,并判斷失效的嚴重程度和優先級,從而不斷地調整測試資源的分配和測試任務的優先級。
原文轉自:http://www.ibm.com/developerworks/cn/rational/1310_lihuan_testerability/