在一些軟件大會(huì)上,人們常常會(huì)問(wèn)這樣一個(gè)問(wèn)題:測(cè)試人員與開(kāi)發(fā)人員的比例究竟多少是合理的?而這樣的問(wèn)題,很難直接給出一個(gè)答案。為什么會(huì)有這樣的問(wèn)題,可能來(lái)自于兩方面的壓力:

   許多公司領(lǐng)導(dǎo)總是希望得到一個(gè)合理的比例,然后按這個(gè)比例分配招聘的名額,或者設(shè)法縮小測(cè)試隊(duì)伍,減少開(kāi)發(fā)成本。
多數(shù)情況下,測(cè)試人員工作量大,比開(kāi)發(fā)人員忙,所以想尋求一個(gè)數(shù)據(jù),來(lái)說(shuō)服其公司,多招些測(cè)試人員。
有些專家說(shuō),根據(jù)調(diào)查結(jié)果發(fā)現(xiàn)通常的比例是1個(gè)測(cè)試人員對(duì)3個(gè)開(kāi)發(fā)人員。實(shí)際上,這樣的比例毫無(wú)意義。測(cè)試人員與開(kāi)發(fā)人員的比例會(huì)受到很多因素的影響,因不同的業(yè)務(wù)、文化和產(chǎn)品而不同。如果不管公司的文化、產(chǎn)品的類型和責(zé)任定義等,一定要按照某個(gè)比例來(lái)分配測(cè)試人員與開(kāi)發(fā)人員,這是武斷的做法,缺乏科學(xué)性。有兩個(gè)典型的例子能說(shuō)明這個(gè)問(wèn)題:

   微軟公司的測(cè)試人員與開(kāi)發(fā)人員比例一般為1:1,甚至在Windows 2000開(kāi)發(fā)團(tuán)隊(duì)中,有1800個(gè)測(cè)試人員,900個(gè)開(kāi)發(fā)人員,測(cè)試人員與開(kāi)發(fā)人員比例為2:1。
   在Google (谷歌)公司,則測(cè)試人員與開(kāi)發(fā)人員比例則很低,據(jù)谷歌公司的測(cè)試經(jīng)理介紹,為1:10.
   那為什么呢?這里主要是測(cè)試人員與開(kāi)發(fā)人員工作范圍的定義,在這兩家公司差別挺大,在微軟,單元測(cè)試由測(cè)試人員(SoftwareDevelopment Engineer in Test, SDET)做, 相當(dāng)于SDET再寫(xiě)一套代碼來(lái)測(cè)試開(kāi)發(fā)人員寫(xiě)的產(chǎn)品代碼,其工作量不比開(kāi)發(fā)人員低,另外,微軟開(kāi)發(fā)的產(chǎn)品都是比較復(fù)雜的操作系統(tǒng)、服務(wù)器軟件等,自然需要很多的測(cè)試人員。而Google的單元測(cè)試和功能測(cè)試一般都是由開(kāi)發(fā)人員自己來(lái)完成,測(cè)試人員主要提供自動(dòng)化測(cè)試工具的支持。軟件開(kāi)發(fā)人員進(jìn)行了足夠的單元測(cè)試,單元測(cè)試的覆蓋度高達(dá)85%以上,軟件在交給測(cè)試人員時(shí),在功能上基本沒(méi)有缺陷,這樣測(cè)試人員主要集中精力進(jìn)行性能測(cè)試、負(fù)載測(cè)試、安全性測(cè)試等,而這些都是自動(dòng)化工具來(lái)完成的,自然需要較少的測(cè)試人員。
 
另外,測(cè)試人員與開(kāi)發(fā)人員還受所開(kāi)發(fā)的產(chǎn)品類型、企業(yè)文化、項(xiàng)目環(huán)境、質(zhì)量要求水平、開(kāi)發(fā)人員或測(cè)試人員的自身素質(zhì)等影響。例如:

     所開(kāi)發(fā)的產(chǎn)品是操作系統(tǒng)、基礎(chǔ)平臺(tái),和一般的客戶端軟件、簡(jiǎn)單的Web應(yīng)用系統(tǒng),其測(cè)試需求、范圍和工作量都是不同的。如Windows操作系統(tǒng)要支持第3方各種應(yīng)用程序、支持大量的API和各種硬件驅(qū)動(dòng)程序等,還有兼容DOS、32位/64位等應(yīng)用程序,系統(tǒng)非常復(fù)雜、用戶操作也非常靈活,所以測(cè)試的工作量也大得多,需要大量測(cè)試人員的付出。
    軟件設(shè)計(jì)、代碼的質(zhì)量,也是企業(yè)文化、開(kāi)發(fā)人員的素質(zhì)和能力等直接影響了軟件的階段性成果的質(zhì)量,如果軟件構(gòu)造質(zhì)量很高,其回歸測(cè)試范圍有限、重復(fù)測(cè)試的次數(shù)只有1~2次,而不是4~5次,結(jié)果,測(cè)試的工作量大大降低,測(cè)試人員數(shù)量隨之降低。
例如,許多免費(fèi)的網(wǎng)絡(luò)應(yīng)用產(chǎn)品總是將自己定位在Beta版,那么,會(huì)降低質(zhì)量水平,讓用戶試用,并幫助發(fā)現(xiàn)一些缺陷(因?yàn)槊赓M(fèi),用戶也不能抱怨什么),這樣的話,公司內(nèi)部測(cè)試的努力會(huì)少多了。
    測(cè)試人員素質(zhì)高,精兵強(qiáng)將,那么人數(shù)會(huì)少些;如果測(cè)試人員定位低、待遇低,可能靠人海戰(zhàn)術(shù),那么人數(shù)會(huì)多。
在敏捷方法中,開(kāi)發(fā)人員的主導(dǎo)作用比較明顯,測(cè)試人員對(duì)開(kāi)發(fā)人員的比例會(huì)低些。如果采用測(cè)試驅(qū)動(dòng)開(kāi)發(fā),測(cè)試人員對(duì)開(kāi)發(fā)人員的比例會(huì)更低。這時(shí),測(cè)試人員和開(kāi)發(fā)人員的界限也變得模糊些。
    當(dāng)然,針對(duì)一個(gè)具體公司,流程、產(chǎn)品和文化等都定型了,可以根據(jù)自己的經(jīng)驗(yàn)、歷史數(shù)據(jù)等,定出一個(gè)合適的比例,如1:2、1:3等,都是可以的。如果一個(gè)軟件公司,硬要參考微軟、谷歌或其它某個(gè)公司的做法,也許不合理。一定要找相似的公司,那家公司又做得很成功,那可以直接參考。
 
    也許將來(lái)某,測(cè)試人員和開(kāi)發(fā)人員會(huì)合二為一,并沒(méi)有明顯的區(qū)分,只是每個(gè)人的任務(wù)會(huì)有所不同,大家都能勝任、完成某個(gè)任務(wù)中的測(cè)試和開(kāi)發(fā)的工作。所以,作為測(cè)試人員,掌握良好的技術(shù)也是必要的,包括編程能力。