我為什么雇傭家庭主婦做軟件測(cè)試

字號(hào):

軟件測(cè)試是一門(mén)非常嶄新的學(xué)科,目前研究的內(nèi)容還不很深入,所涉及的只是測(cè)試數(shù)字、測(cè)試函數(shù)等一些非常簡(jiǎn)單的問(wèn)題,可以說(shuō)還處于嬰兒階段。當(dāng)前,軟件測(cè)試作為一個(gè)成長(zhǎng)中的專(zhuān)業(yè),在美國(guó)已經(jīng)有大學(xué)開(kāi)設(shè)。由于軟件測(cè)試學(xué)科還不成熟,到底它需要一個(gè)什么樣的專(zhuān)業(yè)基礎(chǔ),尚無(wú)定論,而且目前還沒(méi)有一種很好的標(biāo)準(zhǔn)來(lái)衡量一個(gè)測(cè)試人員的優(yōu)劣。陳宏剛博士以微軟公司為例為我們講述了軟件測(cè)試的方法。
    軟件測(cè)試工程師:其職能是理解產(chǎn)品的功能要求,然后對(duì)其進(jìn)行測(cè)試,檢查軟件有沒(méi)有錯(cuò)誤(Bug),決定軟件是否具有穩(wěn)定性(Robust),并寫(xiě)出相應(yīng)的測(cè)試規(guī)范和測(cè)試案例。
    國(guó)內(nèi)的一位博士到微軟總部參觀之后,覺(jué)得非常奇怪:“測(cè)試人員是做什么的?為什么微軟在做產(chǎn)品時(shí),測(cè)試人員占了一半以上?”其實(shí),軟件測(cè)試在產(chǎn)品開(kāi)發(fā)中占據(jù)相當(dāng)重要的一部分,這是一種需要,是微軟從二十幾年的實(shí)踐中明白的道理,也是微軟從不斷的失敗中總結(jié)的經(jīng)驗(yàn)。
    大家可以感覺(jué)到,微軟以前的產(chǎn)品有時(shí)會(huì)發(fā)生崩潰、死機(jī)等現(xiàn)象,而今天的產(chǎn)品則比五年前的產(chǎn)品更大、更完善,并且要穩(wěn)定得多。為什么呢?這是因?yàn)闇y(cè)試工作越來(lái)越好,測(cè)試人員越來(lái)越多,而且越來(lái)越有經(jīng)驗(yàn)。關(guān)于這一點(diǎn),微軟公司曾經(jīng)算過(guò)一筆賬:最初,微軟公司與大家一樣,認(rèn)為測(cè)試不重要,重要的是開(kāi)發(fā)人員。通常,一個(gè)團(tuán)隊(duì)中有幾百個(gè)開(kāi)發(fā)人員,但只有幾個(gè)測(cè)試人員,并且開(kāi)發(fā)人員的工資比測(cè)試人員高很多很多。經(jīng)過(guò)多年的實(shí)踐公司發(fā)現(xiàn),為那些出現(xiàn)問(wèn)題的產(chǎn)品再去修一個(gè)補(bǔ)丁程序所花的錢(qián),比多雇用幾個(gè)測(cè)試人員的費(fèi)用要多得多。
    但是,軟件測(cè)試到底是一門(mén)什么樣的科學(xué)?沒(méi)有人知道,大家只是在摸索。它需要什么樣的背景,也沒(méi)有人知道。所以,微軟的測(cè)試人員中,只有很少一部分是從計(jì)算機(jī)出身的,其余的有學(xué)俄語(yǔ)的、英語(yǔ)的、數(shù)學(xué)的、工程的、生物的……種類(lèi)特別多,但有一點(diǎn):測(cè)試人員一定要有一種感覺(jué)。
    由于現(xiàn)在的軟件測(cè)試仍然處于發(fā)展階段,往往測(cè)試人員還是依據(jù)本能、靠感覺(jué)、靠天賦來(lái)做軟件測(cè)試。如果像用戶(hù)那樣只是通過(guò)使用來(lái)發(fā)現(xiàn)Bug不是真正的測(cè)試,這只是一種最基本的測(cè)試,你只能發(fā)現(xiàn)一般用戶(hù)的問(wèn)題。
    最后,我以一段有趣而又真實(shí)的故事來(lái)結(jié)束這篇文章。
    我在微軟總部做測(cè)試組長(zhǎng)和經(jīng)理時(shí),經(jīng)常需要招聘測(cè)試人員。我招聘人時(shí)通常會(huì)遵循兩個(gè)原則:一是要看他的邏輯性,這是非常重要的一點(diǎn);二是要看他的思維是否怪異,是否能經(jīng)常產(chǎn)生一些怪點(diǎn)子。第一點(diǎn)是可以依靠后天培養(yǎng)的,但是第二點(diǎn)恐怕是后天培養(yǎng)不出來(lái)的,多少有些天生的因素在里面。
    這兩個(gè)原則是我在多年的實(shí)踐中得出來(lái)的。由于軟件測(cè)試學(xué)科還不成熟,目前還沒(méi)有一種很好的標(biāo)準(zhǔn)來(lái)衡量一個(gè)測(cè)試人員的優(yōu)劣。而且它到底需要一個(gè)什么樣的專(zhuān)業(yè)基礎(chǔ),尚無(wú)定論。從目前來(lái)看,并不是說(shuō)學(xué)計(jì)算機(jī)專(zhuān)業(yè)的就最適合做軟件測(cè)試人員。