測試三問——新手必看
測試三問——新手必看
在進入軟件測試行業(yè)之初,很多人都會存在下面最原始的問題,我稱之為“測試三問”:
1、什么是軟件測試?
2、為什么會有或會需要做軟件測試?
3、軟件測試的目的是什么?
答:
一、什么是軟件測試?
軟件測試是一個過程。是一個質(zhì)量保證中的一個環(huán)節(jié),是一個驗證被測產(chǎn)品是否符合客戶需求的過程。而且是一個有計劃、有規(guī)律、有組織的活動。
二、為什么會有或需要進行軟件測試?
先簡單來描述一個邏輯:
第一、隨著信息化的發(fā)展,我們在各行各業(yè)使用了越來越多的軟件。一方面為我們提高工作效率,一方法豐富了我們的生活,甚至在有些行業(yè)已經(jīng)離不開相關的專業(yè)軟件;
第二、既然這些軟件為我們工作,我們就需要它正確的為我們工作,否則會給我們帶來不必要的麻煩甚至是危害;
第三、既然如此,我們在使用軟件之前,就需要知道它能不能如我們所需要的那樣工作。
這樣,就產(chǎn)生一個需求:對軟件進行測試。
有需要就會產(chǎn)生使其存在,以上簡單的回答了上面第二個的問題。
不僅如此,在很多軟件在從程序員手中開發(fā)完之初,都會有或多或少的問題,更是提出了軟件測試的必要性,隨著時間推移,逐漸催生了軟件測試行業(yè)。
軟件測試是為了保證我們的軟件產(chǎn)品的質(zhì)量。那么什么是我們軟件產(chǎn)品的質(zhì)量?如何才能說我們保證了我們軟件產(chǎn)品的質(zhì)量呢?
我們說如果我們實現(xiàn)了客戶的所有要求,同時保證了程序運行的效率,保證了程序的可讀性,可維護性,那么我們就保證了我們軟件產(chǎn)品的質(zhì)量。
前面這些點是我們軟件測試的最最核心的思想。我們的一切軟件測試活動都是為了保證這個核心思想而存在的,為了保證這個核心思想,出現(xiàn)了軟件測試工程,出現(xiàn)了軟件測試這個專門的學科。
三、軟件測試的目的是什么?
在談到軟件測試目的時,許多人都引用grenford j. myers在《the art of software testing》一書中的觀點:
1、軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程;
2、測試是為了證明程序有錯,而不是證明程序無錯誤;
3、一個好的測試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤;
4、一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤的測試。
這種觀點可以提醒人們測試要以查找錯誤為中心,而不是為了說明軟件的正確性,實際上大部分未經(jīng)過測試軟件產(chǎn)品都或多或少的存在著錯誤。
但是僅憑字面意思理解這一觀點可能會產(chǎn)生誤導,認為發(fā)現(xiàn)錯誤是軟件測試的唯一目,查找不出錯誤的測試就是沒有價值的,事實并非如此。
首先,測試并不僅僅是為了要找出錯誤。通過分析錯誤產(chǎn)生的原因和錯誤的分布特征,可以幫助項目管理者發(fā)現(xiàn)當前所采用的軟件過程的缺陷,以便改進。同時,這種分析也能幫助我們設計出有針對性地檢測方法,改善測試的有效性。
其次,沒有發(fā)現(xiàn)錯誤的測試也是有價值的,完整的測試是評定測試質(zhì)量的一種方法。
posted on 2011-10-10 10:16 順其自然EVO 閱讀(168) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄