原創|行業資訊|編輯:郝浩|2015-08-03 16:13:29.000|閱讀 1427 次
概述:雖然軟件開發者與軟件測試人員的工作有很大不同,但是他們都在努力用各自的方式去實現提高軟件性能的相同目標。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
人們通常會對自己所犯錯誤視而不見或者拒絕承認。同樣的,在軟件開發領域,程序員們在耗費大量心血編寫代碼,完成工作之后,他們會固執的認為自己編寫的代碼會運行良好。他們對待其開發的應用程序就像對待自己的孩子一樣,拒絕承認自己的孩子有什么不好的地方。這就是為什么軟件開發人員難于發現和改正自己的錯誤。
開發人員進行開發的目標是將軟件所需的功能完美的展現出來。當程序的功能運轉正常的時候他們會自我感覺良好,因為他們的主要目標就是功能二字。而測試人員與他們想的卻不一樣。測試人員通常會從不同的角度切入進軟件內部,打破程序員們慣有的思維方式。他們的目標是通過各種不同的測試用例把軟件潛在的不足之處引發出來。
開發人員專注于程序的功能,并在現有需求目標的指引下開展工作,當新的需求目標出現之后,他們會與現有的需求目標混淆并產生業務邏輯層或者功能性上的bug。需求作為程序員考慮功能的唯一標準,因此如果當他們在需求的理解上出現了偏差的話,他們在測試應用程序上就會不得要領了。而軟件測試人員會從業務的角度來看待需求,他們能夠辨別哪些需要的東西完成了,而哪些還沒有。
開發人員只擅長代碼的功能測試和代碼修復,如果程序運行正常,那么他們的測試就結束了。而事實上,測試人員的主要工作是將應用程序拆解,從每個小塊之中找尋那些不易發現的bug,并幫助開發人員了解那些特定的功能應當是怎么樣的。
大多數開發人員專注于特定的任務或功能,他們從需求所選擇的那個點來完成功能的設計,因此在測試的時候他們也只會從這個點來進行考量而不會考慮功能設計的靈活度。而測試人員會在功能設計方面考慮得更寬,在一個或者多個目標完成時,他們都會在大腦里呈現心目中應用程序的完整樣子,這有助于在更早的時間更輕松的完成后續功能的設計。
軟件測試人員通過平時接觸的常見錯誤和應用程序邏輯積累了豐富的知識和經驗。由于在測試上的長期鍛煉,測試人員對于找尋bug和程序測試更加得心應手,而開發人員只擅長修復已拆解的應用程序而不擅長拆解。測試需要通過有專業的測試能力的軟件測試人員才能完成,因為他們具備了掌握軟件測試要領、思想的能力以及對軟件測試工具、方法使用的理解,而這些是需要長時間實踐才能熟悉的。
這就是為什么我們需要一個測試團隊,我并不是說開發人員做測試會很糟糕,我只是為了說明對比真正的測試人員還不夠熟練和有經驗。術業有專攻,每個人都有自己擅長的領域。許多開發人員認為測試人員是在故意給他們找碴挑刺,而事實上,這些bug都是在開發過程中所遺留的不易察覺的問題。請記住,測試人員永遠是開發人員身邊最好的朋友!
本文翻譯自
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn