隨著軟件測試對提高軟件質(zhì)量重要性的不斷提高叨襟,軟件測試也不斷受到重視。但是幔荒,國內(nèi)軟件測試過程的不規(guī)范糊闽,重視開發(fā)和輕視測試的現(xiàn)象依舊存在梳玫。
因此,對于軟件測試的重要性右犹、測試方法和測試過程等方面都存在很多不恰當(dāng)?shù)恼J(rèn)識提澎,這將會進(jìn)一步的影響軟件測試活動的開展,并且阻礙軟件測試質(zhì)量的提高念链。
我們暫且不去評析軟件測試在當(dāng)今it公司中的地位盼忌,只說大家對軟件測試的認(rèn)識〉嗄梗基于我短暫的經(jīng)驗谦纱,我總結(jié)出軟件測試幾個最常見的誤區(qū),供大家研究
誤區(qū)1:軟件開發(fā)完成后才進(jìn)行測試
在傳統(tǒng)的瀑布模型中君编,軟件項目主要有一下幾個階段組成:用戶需求跨嘉、需求分析、概要設(shè)計吃嘿、詳細(xì)設(shè)計祠乃、編碼和實現(xiàn)、測試以及運行維護(hù)兑燥。由于軟件測試僅處于運行維護(hù)階段之前亮瓷,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。因此人們一般認(rèn)為降瞳,軟件測試只是軟件編碼后的一個階段嘱支。
個人觀點:軟件測試是貫穿于整個軟件開發(fā)生命周期的過程活動,包括軟件測試計劃力崇、軟件測試需求分析斗塘、軟件測試用例設(shè)計赢织、軟件測試執(zhí)行亮靴、軟件缺陷管理、軟件測試風(fēng)險管理以及其他的一些軟件測試相關(guān)的活動等等組成于置。在軟件項目的每個階段茧吊,都需要進(jìn)行不同目的和不同內(nèi)容的測試活動,以保證各個階段工作產(chǎn)品輸出的正確性八毯。軟件測試的對象也不僅僅是軟件代碼搓侄,還包括軟件需求文檔和設(shè)計文檔等其他所有的軟件工作產(chǎn)品。軟件開發(fā)與軟件測試之間應(yīng)該是交互進(jìn)行的话速,比如單元編碼之后需要進(jìn)行單元測試讶踪,模塊組合之后進(jìn)行集成測試。
誤區(qū)2:軟件發(fā)布后發(fā)現(xiàn)軟件問題泊交,那是測試人員的責(zé)任
許多人認(rèn)為測試人員需要對發(fā)布的軟件質(zhì)量負(fù)責(zé)乳讥,假如軟件到用戶后柱查,發(fā)現(xiàn)很多的問題,那是測試人員的錯和責(zé)任云石。這種認(rèn)識誤區(qū)非常打擊測試人員的積極性唉工。軟件中的缺陷可能來自軟件開發(fā)過程中的任何一個過程,而對于軟件測試而言汹忠,只能證明軟件存在缺陷淋硝,而不能保證軟件沒有錯誤。通過軟件測試宽菜,無法發(fā)現(xiàn)軟件中的所有錯誤和缺陷谣膳。
個人觀點:從軟件開發(fā)的角度看,軟件的高質(zhì)量不是軟件測試人員測出來的赋焕,而是需要軟件生命周期的各個過程共同來保證的参歹。出現(xiàn)軟件錯誤,不能簡單地歸結(jié)為某一個人或某個團(tuán)隊的責(zé)任隆判。比如有些錯誤的產(chǎn)生可能不是技術(shù)原因犬庇,可能來自于混亂的項目管理;或者客戶發(fā)現(xiàn)軟件某些功能并沒有按照原有需求來實現(xiàn)侨嘀,換言之臭挽,軟件沒有完成客戶想做的操作,諸如此類問題很可能是軟件設(shè)計人員理解需求錯誤致使設(shè)計不當(dāng)所引起的咬腕。
誤區(qū)3:測試簡單欢峰,對技術(shù)要求不高
這是對測試最通常的評價,如果一個開發(fā)人員轉(zhuǎn)做測試涨共,那么別人通常認(rèn)為纽帖,他是不是開發(fā)能力不夠,或者是他是不是不愿意吃苦之類举反。認(rèn)為測試只是對照產(chǎn)品規(guī)格書操作軟件懊直,發(fā)現(xiàn)軟件與規(guī)格說明不一致的地方,是沒有技術(shù)含量的工作火鼻,甚至認(rèn)為測試就是點點點室囊。。魁索。
個人觀點:測試反而對技術(shù)要求更高融撞。這里的"高"不是說一定多么精于某一門技術(shù),而是需要更廣的技術(shù)能力粗蔚。比如簡單的功能測試尝偎,我們需要需求分析能力和業(yè)務(wù)能力,很多公司中測試人員的業(yè)務(wù)能力甚至超越開發(fā)人員能力鹏控,當(dāng)然還有相應(yīng)的測試技術(shù)致扯;進(jìn)行白盒測試趁窃,我們需要擁有一定的代碼閱讀能力和編寫能力;安全性測試急前,我們需要一定的網(wǎng)絡(luò)安全知識和數(shù)據(jù)庫分析能力等等醒陆。
誤區(qū)4:由項目進(jìn)度來決定測試工作量
規(guī)范的測試流程應(yīng)該是一個整體的連續(xù)的過程,包括測試計劃和控制裆针、測試分析和設(shè)計刨摩、測試實現(xiàn)和執(zhí)行等階段。每一階段也應(yīng)有各自的規(guī)程世吨。而大多數(shù)人對測試的理解往往是隨項目進(jìn)度而定澡刹,即離項目交付空余的時間多,就多做測試耘婚;反之罢浇,則少做測試。這樣很可能導(dǎo)致測試時間緊張沐祷,從而可能放棄其中的一些測試嚷闭,可能導(dǎo)致遺漏一些重要的缺陷,顯然這種做法存在非常大的風(fēng)險赖临。
個人觀點:測試貫穿整個軟件生命周期胞锰。
誤區(qū)5:總有一天,機(jī)器自動化將代替人工測試
這是業(yè)界很多人所津津樂道的話題兢榨,記得曾經(jīng)去某個公司面試嗅榕,其經(jīng)理很得意的告訴我他們的目標(biāo)就是未來以自動化取代手工測試,每個項目只需要一兩個自動化測試工程師就ok了
個人觀點:當(dāng)然吵聪,我不否認(rèn)自動化測試的作用凌那,甚至我自己也在津津樂道于測試框架開發(fā)等工作,但是自動化代替人工測試吟逝?恐怕我得說“NO”帽蝶。不是難于實現(xiàn),而是根本不可能澎办。
軟件的最終使用者永遠(yuǎn)是人嘲碱,所以只有人才能真正了解人的需求金砍。例如用戶體驗局蚀,common sense等等,這是機(jī)器永遠(yuǎn)不能代替的恕稠。
況且自動化測試需要在前期投入大量的資源和工作量琅绅,同時需要維護(hù)的成本很高,包括環(huán)境的搭建鹅巍、測試腳本的設(shè)計千扶、維護(hù)等料祠,這樣的成本在國內(nèi)企業(yè)中要實施起來更是難之又難。
最后:【可能給予你幫助】
資源分享
下面這些是我的收集和整理的資料澎羞,對于開始學(xué)習(xí)【軟件測試】或是技能進(jìn)階的朋友來說髓绽,絕對是最全面的教程倉庫,這個倉庫也陪伴我走過了最艱難的路程妆绞,希望也能幫助到你顺呕。關(guān)注我,為你的測試之路保駕護(hù)航括饶,陪伴每一位測試人的成長株茶。
測試資源免費領(lǐng)取~~