為什么要選擇軟件測(cè)試”并非出身名校的我,每每在面試中面臨著個(gè)問(wèn)題時(shí),總是覺(jué)得百感交集。測(cè)試對(duì)我就如同我歷經(jīng)的求職過(guò)程——痛苦并快樂(lè)著。在品味它的過(guò)程中,我彷徨,迷茫,經(jīng)歷著感情的低潮,這個(gè)過(guò)程不會(huì)很快樂(lè),甚至是痛苦。同樣品味測(cè)試,有人拿駕馭它易如反掌折枝,不費(fèi)吹灰之力;有人雖歷經(jīng)波折,但最后總算苦盡甘來(lái),嘗到“擁有”的甜美果實(shí);但也有人即便吃盡苦中苦、用盡千方百計(jì),終了卻仍與“它”擦身而過(guò)。結(jié)果永遠(yuǎn)難以預(yù)測(cè),我渴望快樂(lè),那就要蛻變,意味著要經(jīng)歷痛苦而漫長(zhǎng)的磨練,意味著所有的一切都將從頭開(kāi)始,一切都將變的陌生,但如果蛻變成功,那一刻就如同蝴蝶破繭而出的那一瞬間,美麗卻又讓人感動(dòng)。一直以來(lái)對(duì)測(cè)試的認(rèn)識(shí)存在誤區(qū),認(rèn)為測(cè)試的目標(biāo)和價(jià)值就是在黑盒測(cè)試活動(dòng)中找bug,但當(dāng)測(cè)試經(jīng)驗(yàn)的逐漸的積累,重新回頭再重新審視測(cè)試,發(fā)現(xiàn)我所理解的測(cè)試逐漸浮現(xiàn)出它自身的價(jià)值,在這里我對(duì)自己的感悟和理解做了一個(gè)梳理,有不完整和理解不正確的地方,希望大家多多指教。
測(cè)試=重復(fù)+枯燥
也許我要講測(cè)試不過(guò)是每天重復(fù)一些操作來(lái)發(fā)現(xiàn)Bug(錯(cuò)誤)。事實(shí)的確如此,哪怕是非常熱愛(ài)這項(xiàng)職業(yè)的人也承認(rèn)它的枯燥。測(cè)試它是機(jī)械、枯燥、重復(fù)的過(guò)程,尤其是在項(xiàng)目接近尾聲的時(shí)候,修改測(cè)試,再修改再測(cè)試,像無(wú)法擺脫的輪回,有時(shí)候更像是一場(chǎng)與開(kāi)發(fā)組不間斷的戰(zhàn)爭(zhēng),不過(guò),摒棄枯燥的外衣,測(cè)試本身有它的價(jià)值所在,它更讓人能從用戶的角度來(lái)考慮問(wèn)題,更能深入了解程序開(kāi)發(fā)過(guò)程中可能出現(xiàn)的問(wèn)題,盡管可能一整天都為了一個(gè)很小的問(wèn)題“循規(guī)蹈矩”地反復(fù)測(cè)試并撰寫(xiě)測(cè)試文檔,這樣的重復(fù)將會(huì)是重要的積累。我喜歡新東方學(xué)校的徐小平新書(shū)《騎驢找馬》中的一句話:“重復(fù)做漢堡,就是麥當(dāng)勞;重復(fù)煮咖啡,就是星巴克;重復(fù)教托福,就是俞敏洪;重復(fù)做好事,就是活雷鋒!惫ぷ鞅旧淼臐M足也是來(lái)自于填補(bǔ)缺陷,測(cè)試亦是如此。
其實(shí)在現(xiàn)實(shí)的軟件測(cè)試環(huán)境中,沒(méi)有兩條測(cè)試路徑是完全相同的,沒(méi)有測(cè)試是可以精確的重復(fù)執(zhí)行,就好像你不能精確的沿著你的足跡往回走,你可以很接近,但你總會(huì)有一點(diǎn)偏移。所以你無(wú)法確保其中某些因素會(huì)影響你下次的測(cè)試,重復(fù)測(cè)試也其實(shí)只是重復(fù)其它測(cè)試的某些方面,在以下某些方面重復(fù)的測(cè)試是非常有必要的:
1.重試:當(dāng)你不確定一個(gè)測(cè)試在其它的時(shí)候是否被正確的執(zhí)行時(shí),這種情況的一種處理方法就是讓幾個(gè)測(cè)試員沿著同樣的測(cè)試說(shuō)明執(zhí)行測(cè)試,檢查他們是否得到相同的結(jié)果。
2.改變:當(dāng)開(kāi)發(fā)修改了一個(gè)測(cè)試中的重要部分,但同時(shí)保持其它部分不變時(shí),即使這個(gè)測(cè)試的一部分元素是保持不變的,但對(duì)整個(gè)測(cè)試來(lái)說(shuō),它是新的,并且可能會(huì)引發(fā)新的行為。之所以會(huì)對(duì)一個(gè)測(cè)試作改變,那是因?yàn)殡m然之前的測(cè)試涵蓋了某些方面,但涵蓋的范圍還不足夠。這個(gè)時(shí)候需要重復(fù)測(cè)試。
3.重要性:當(dāng)可以通過(guò)重復(fù)測(cè)試發(fā)生的問(wèn)題可能比其它檢測(cè)出來(lái)的問(wèn)題更重要時(shí),產(chǎn)品行為的重要性的結(jié)果是不一樣的,有時(shí)一個(gè)特殊的問(wèn)題或者只要影響用戶一次就可能被認(rèn)為難以接受的(“決不允許再次發(fā)生”的情況)。這并不意味著需要執(zhí)行完全相同的測(cè)試,只要重復(fù)的測(cè)試包含可檢測(cè)出問(wèn)題的足夠相似的元素就可以了(查看改變部分)。
4.舊問(wèn)題:原有的問(wèn)題在原有的環(huán)境中已經(jīng)解決,但是將其應(yīng)用到新的環(huán)境中時(shí),然后會(huì)偶現(xiàn),這是需要在新的環(huán)境中重復(fù)的測(cè)試。
測(cè)試= 沒(méi)有技術(shù)含量
踏上測(cè)試這條路的人何止千萬(wàn),但是不同的人對(duì)這個(gè)行業(yè)有不同的感嘆。有人嘆息成長(zhǎng)為測(cè)試的高手猶如星星之火,難以燎原,有人在唏噓,測(cè)試毫無(wú)技術(shù)含量,也有人感嘆因?yàn)槟康牟煌と霚y(cè)試道路的人們,經(jīng)過(guò)實(shí)踐的歷練,歲月的打磨,會(huì)有那么多不一樣的結(jié)果。
其實(shí)軟件測(cè)試并不是簡(jiǎn)單,雖然它所進(jìn)行的主要工作就是在軟件開(kāi)發(fā)過(guò)程中的排錯(cuò)。但是這種排錯(cuò)的工作卻并非像我作為新人初涉入這個(gè)行業(yè)所了解那樣,僅僅是一個(gè)尋找bug的工作,任何人,都能找到出來(lái),區(qū)別在于,熟手找到的速度和數(shù)量大于生手而已。它的根本原則是站在客戶/終端用戶的角度上來(lái)衡量和評(píng)價(jià)軟件產(chǎn)品的質(zhì)量。如果不清楚客戶真正的需求,那么我們的工作也只不過(guò)是機(jī)械的勞作而已。我們需要將需求分解為可測(cè)的功能點(diǎn),并且根據(jù)自己的思維去想,在有限的測(cè)試時(shí)間內(nèi),如何設(shè)計(jì)測(cè)試用例,能夠保證最佳有效的測(cè)試覆蓋,檢測(cè)出軟件產(chǎn)品中的種種功能及性能隱患。在這個(gè)過(guò)程中我們就像在掘?qū),寶藏隱藏的越深,條件越復(fù)雜,級(jí)別越高,找到后,就會(huì)越開(kāi)心。
如何完全界定有沒(méi)有技術(shù)含量,我也說(shuō)不好,但是我認(rèn)為對(duì)測(cè)試悟得越透,經(jīng)驗(yàn)越多,測(cè)試也就會(huì)做得越好,取得成效越好,從這個(gè)角度上講,測(cè)試是很需要能力的,這種能力我們也可以理解成“技術(shù)含量 ”, 在軟件開(kāi)發(fā)過(guò)程中測(cè)試人員不僅需要具備技術(shù)能力,還需要具備溝通能力,懷疑精神,極強(qiáng)的洞察力,耐心,甚至是幽默感(在遇到狡辯的情況下,幽默的批評(píng)是很有幫助的)。所以所謂的技術(shù)含量在某種程度上并不完全是純粹的技術(shù),更多時(shí)候是測(cè)試人員本身的素質(zhì)。
測(cè)試+開(kāi)發(fā) = 不可調(diào)和的矛盾
在好的項(xiàng)目組中,和諧的測(cè)試和開(kāi)發(fā)猶如一對(duì)好的矛和盾,相互制約又相互協(xié)調(diào),在求職面試時(shí),經(jīng)常會(huì)遇到一個(gè)相同的問(wèn)題,在測(cè)試項(xiàng)目或者產(chǎn)品的過(guò)程如何協(xié)調(diào)與開(kāi)發(fā)人員的關(guān)系,即如何處理工作性質(zhì)所帶來(lái)的開(kāi)發(fā)和測(cè)試的矛盾。剛涉足測(cè)試時(shí),我不能很好的體會(huì)到這種矛盾,只能淺層的想象測(cè)試是挑開(kāi)發(fā)的毛病,開(kāi)發(fā)當(dāng)然也不樂(lè)意老讓人挑毛病,所以就有了矛盾。之后翻閱一些書(shū)籍,里面談到測(cè)試和開(kāi)發(fā)的協(xié)調(diào)需要上升到一定的高度,即“雙贏”,就是大家共同的目標(biāo)是一致的,就是維護(hù)好整個(gè)項(xiàng)目讓客戶打到最佳滿意度,這樣會(huì)這很大程度上避免一些“沖突”,實(shí)現(xiàn)工作中的雙贏,理論上這是個(gè)很好很和諧的概念,這樣回答面試官不加分也不至于扣分。
但是在實(shí)際操作中,很多現(xiàn)實(shí)因素會(huì)制約這種思想,比如其一:大家為了減少項(xiàng)目出錯(cuò)的風(fēng)險(xiǎn),卯足了勁去查bug,免不了有鉆牛角尖的情況發(fā)生,再要是同時(shí)開(kāi)發(fā)人員會(huì)將bug的數(shù)量作為其考核的標(biāo)準(zhǔn),那么測(cè)試和開(kāi)發(fā)之間的“硝煙”是終日揮散不去的。其二:測(cè)試和開(kāi)發(fā)獲取的信息的不平等抑或不一致,由于開(kāi)發(fā)人員在整個(gè)項(xiàng)目開(kāi)發(fā)過(guò)程中獲取的需求信息,需求變得信息,項(xiàng)目流程信息等比測(cè)試人員更廣泛或者時(shí)間上更快捷,導(dǎo)致與最終測(cè)試人員的思想不一致而產(chǎn)生一些錯(cuò)報(bào)或者漏報(bào)的bug,倘若再加上溝通不善,會(huì)對(duì)整個(gè)項(xiàng)目進(jìn)度和流程產(chǎn)生很大的影響;信息不一致則是開(kāi)發(fā)和測(cè)試在理解需求上產(chǎn)生分歧,從需求階段就產(chǎn)生矛盾勢(shì)必會(huì)滿意至編碼階段和測(cè)試階段,解決這樣的矛盾的結(jié)果就是拖延項(xiàng)目的進(jìn)度。
測(cè)試如矛,開(kāi)發(fā)如盾,在初期,矛若知道盾之強(qiáng)弱,便可及時(shí)修補(bǔ)其弱點(diǎn),那么這就首先要求開(kāi)發(fā)和測(cè)試從項(xiàng)目出去就需要保持一個(gè)一致的狀態(tài),無(wú)論從需求信息,需求變更信息,風(fēng)險(xiǎn)信息,技術(shù)瓶頸信息,項(xiàng)目難度信息,都需要保持同等及時(shí)的認(rèn)知,這就需要測(cè)試和開(kāi)發(fā)人員相互溝通得當(dāng)及時(shí)。其次在處理bug的問(wèn)題上,好習(xí)慣的測(cè)試人員會(huì)在開(kāi)發(fā)之前撰寫(xiě)case階段就根據(jù)自身經(jīng)驗(yàn)預(yù)測(cè)開(kāi)發(fā)人員容易忽視的邏輯從而預(yù)先告知防止錯(cuò)漏的發(fā)生。其三,對(duì)于bug的分析和爭(zhēng)議,測(cè)試人員應(yīng)該多從用戶的可重現(xiàn)性,bug的風(fēng)險(xiǎn)性,解決bug所需要的時(shí)間和價(jià)值性價(jià)比等方面共同商榷,最后定奪一個(gè)處理bug的最佳方案,一個(gè)被提出的bug也并非只有解決,不解決和無(wú)效者幾種狀態(tài),可以根據(jù)整個(gè)項(xiàng)目的情況來(lái)定奪它,目前不解決也不一定是永遠(yuǎn)都不解決,最重要的是它對(duì)產(chǎn)品的影響力和投入的估計(jì)要得當(dāng)適合,才能查出一個(gè)高性價(jià)比的產(chǎn)品,最終獲得收益的最大化,同時(shí)開(kāi)發(fā)和測(cè)試也獲得了雙贏的局面。
以子之矛,攻子之盾,在古代或許是絕對(duì)的對(duì)立,但是對(duì)于測(cè)試和開(kāi)發(fā)誰(shuí)說(shuō)一支好的矛一定要攻破盾,一支好的盾一定抵御得了任何矛,好的矛與好的盾,不斷的磨合和進(jìn)步,終有一天會(huì)默契得強(qiáng)過(guò)任何矛盾,所向披靡。
我的測(cè)試 == 痛&&快樂(lè)
我的第一份實(shí)習(xí)工作是在一個(gè)外企做黑盒WEBGUI測(cè)試。剛剛進(jìn)入軟件測(cè)試的我那個(gè)時(shí)候?qū)浖䴗y(cè)試也一無(wú)所知,甚至一開(kāi)始我的職位都是:測(cè)試執(zhí)行人員。跟我一起奮斗的同伴們,每天都在不斷的自我抱怨中拿著那些別人寫(xiě)好的測(cè)試用例,一遍一遍在同一個(gè)頁(yè)面上重復(fù)的點(diǎn)擊某個(gè)按鈕。大家都似乎認(rèn)同一個(gè)道理:這就算測(cè)試運(yùn)行自己寫(xiě)或者別人寫(xiě)的case,機(jī)械的像在碰運(yùn)氣一樣的去尋找或許存在的bug。
我曾在心里質(zhì)疑過(guò)自己的選擇,但是我最終還是覺(jué)得,即便是在這樣的環(huán)境里面,我能學(xué)到應(yīng)該不止這些。我能做的應(yīng)該也不止這樣,否則我的路在哪里人無(wú)法預(yù)料未來(lái),只能把握現(xiàn)在。如果你想未來(lái)能走得更遠(yuǎn),更寬,那么今天就一定要努力。這也是我當(dāng)時(shí)想的,并且努力去做的。其實(shí)喜歡與否,有的時(shí)候也在于你是否有興趣去探求,去思考和了解這個(gè)行業(yè)里面的浮在表面之外那些東西。不了解,就很難喜歡,不喜歡,又有什么機(jī)會(huì)會(huì)因?yàn)榕d趣而去努力呢或許,世界本來(lái)就是不公平的,在某些人的眼中,看別人瀟灑的談笑,自己卻要如此艱澀的生活著;或許,世界本來(lái)就是公平的,你善待了你的生命,虔誠(chéng)的為了自己的理想去努力,即使不能碩果累累,取得的成績(jī)可圈可點(diǎn),對(duì)于我的人生,痛并快樂(lè)著,這就已經(jīng)足夠。
相關(guān)推薦:軟件水平考試網(wǎng)絡(luò)工程師學(xué)習(xí)筆記匯總(完整版)北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |