|
在一些軟件大會(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è)試人員。
有些專(zhuān)家說(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)品的類(lèi)型和責(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)品類(lèi)型、企業(yè)文化、項(xiàng)目環(huán)境、質(zhì)量要求水平、開(kāi)發(fā)人員或測(cè)試人員的自身素質(zhì)等影響。例如:
所開(kāi)發(fā)的產(chǎn)品是操作系統(tǒng)、基礎(chǔ)平臺(tái),和一般的客戶(hù)端軟件、簡(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ù)雜、用戶(hù)操作也非常靈活,所以測(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ì)量水平,讓用戶(hù)試用,并幫助發(fā)現(xiàn)一些缺陷(因?yàn)槊赓M(fèi),用戶(hù)也不能抱怨什么),這樣的話(huà),公司內(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ù)也是必要的,包括編程能力。
Google 測(cè)試工程師職責(zé):
* Developing test strategies.
* Automating tests using test frameworks.
* Write moderately complex code/scripts to test systems.
* Take responsibility for monitoring product development and usage atall levels with an eye toward improving product quality.
* May create test harnesses and infrastructure.
微軟SDET的責(zé)任:
*Hire developers to write code to test code. Our goal is to haveengineers writing robust, reliable and repeatable tests that findissues early and cover the surface area of the component under testthoroughly.
*SDETs are in the source code for the product as muchas they are working with test source and our SDETs build the frameworkused for testing.
*Build programmatic tests that areself-verifying, that are easily extensible and that are not simplycomparing “data in” to “expected out”.
*A successful SDET derivespleasure from building lasting designs, implementing robustmaintainable code, and being a partner in the design of the componentswhile advancing the technologies and approaches for testing softwar
it知識(shí)庫(kù):測(cè)試人員與開(kāi)發(fā)人員的比例究竟多少是合理的?,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。