我接觸過數(shù)以千計的測試員,他們都有這么一個觀點:我從事的是測試工作,我是對質量負責的人。甚至有些人認為自己是產品質量的守護神。

  我想問的問題是:這種想法對我們有好處嗎?

  下面是我的一些看法,同時也期待大家可以思考一下這些看法。

  質量問題,是所有人的責任,而不僅僅是一個測試員的責任或者成千上萬測試員的責任。如果你想讓你的家庭幸福美滿,那么你不能將家庭中的某一個人指定為幸福的擔保人,而同時一旦出現(xiàn)任何問題,便把責任完全推給這個人。如果一個家庭想永遠都幸福美滿,那么必須全家人都要參與來共同營造這個美好幸福的家。

  同理,如果要保證產品的質量,那么客戶、需求、設計、開發(fā)、測試以及售后支持都必須承擔平等的責任。

  然而,有一些根本不重視測試或者假裝自己很重視測試的公司,表面上是為每一個項目都安排一個測試員,而一旦客戶發(fā)現(xiàn)了問題,把責任全部推到測試員身上。這些自認為是質量守護神的測試員,會覺得因為漏測了一個缺陷而開始內疚,認為自己該為這個問題負責任。

  這些情況發(fā)生的原因是,大多數(shù)測試員還沒用弄清楚測試到底是什么。他們認為測試是提高質量,但實際上不是提高質量,而是尋找與質量有關的信息。

  報告缺陷:如果沒有人關注修復缺陷,那么產品質量本身是不會有提高的。如果你做過測試,那么你肯定有這么一個感觸,修復一個缺陷,可能導致更多的缺陷出現(xiàn)。所以,測試員報告一個缺陷,當這個缺陷被修復之后,很可能又有新問題產生,此時的軟件質量反而降低了。

  同時,我也承認這一點:缺陷少并不意味著質量高。Jerry Weinberg, 軟件測試界的奇才,在20世紀60年代的時候,開展測試團隊的工作的第一人。他認為“質量只是對于那些與其有關的人才有價值”,而后,Michael Bolton把這句話拓展為“測試員的職責是要找出與其有關的是什么人和什么事”。實在太了不起了!

  如果測試員還繼續(xù)認為自己是質量守護神的話,那么將會出現(xiàn)以下的問題:

  與開發(fā)人員的爭論:測試員視開發(fā)人員為惡魔,因為是他們令到軟件質量低劣,并與之展開爭論,然后開發(fā)人員也開始不尊重測試團隊,這會影響到整個團隊的表現(xiàn)。因此,導致這種情況出現(xiàn)的測試員們,不僅僅是損壞他們的名聲,而且也損壞了我們的名聲。

  這像擊球手指責投手令其要跑一大圈一樣。如果一個板球隊伍想要運作的好的話,那么擊球手和投手必須緊密合作,從而獲取比賽的勝利。有時候是擊球手表現(xiàn)不好,而有時候是投手表現(xiàn)不好。你應該知道,自己和開發(fā)人員是一樣的,都是普通人,你們都會犯錯誤。然而,致力于思考的話則可以幫助團隊獲得成功。

  遺漏缺陷時的內疚:當出現(xiàn)漏測一個缺陷時,測試員認為是由于自身的緣故而造成的。這樣的測試員沒有想到自己僅僅是團隊中的一員,這是整個團隊的責任。我的意思是,對于漏測缺陷這個責任,整個團隊都需要負責任。