1. 程式人生 > >關於軟體測試的個人思考

關於軟體測試的個人思考

最近拜讀了一本軟體測試入門級書籍《大話軟體測試》,感覺受益良多。作為一個還沒有入門的新手來說,這本書可以迅速幫助瞭解軟體測試領域的概況、思想、技術、管理等一些因素,使得新手能夠迅速的瞭解軟體測試這個行業。軟體測試,這個行業的誕生就是為了儘可能保障客戶在使用軟體時所蒙受的損失。總所周知,任何軟體都不可能沒有缺陷,不能做到十分的完美,有一些小的缺陷實際上是不影響軟體的正常執行,然而一些大的缺陷卻能使軟體無法執行。所以軟體測試的存在就是為了找出其中的BUG,使得軟體能夠正常執行。

軟體測試的中心目的是為了滿足客戶的顯性需求和隱形需求。那麼什麼叫做顯性需求呢?顯性需求是指客戶由於需要達到某專案的所需求的手段或方法。但是在很多時候,客戶也不知道自己到底是需要什麼,那麼作為軟體研發人員,必須要了解客戶需求的本質是什麼,從而挖掘出更多的需求,這就是隱形需求。充分理解了客戶的需求,才能理解對於軟體來說什麼是BUG,什麼不是BUG。當然在軟體測試時,有很多不是針對需求方面的軟體錯誤,這就是軟體開發人員的問題了,這也是測試人員必須具備的能力——找出開發人員的錯誤。

既然已經充分理解了客戶的需求之後,那麼久需要製作相應的文件來確保軟體在開發過程是處於一個可控的範圍。為什麼這麼說呢?首先如果沒有相應的文件,每個人的理解時不同的,那麼就無法統一軟體的需求。還有沒有相應的文件,也就無法制定具體的指標定義軟體的缺陷。而我們測試人員也可從文件中獲得了對軟體的全域性的瞭解和認知。瞭解客戶需求和制定文件大部分情況下都是PM去做的。

軟體的前期工作均已做好了,開發人員開始進入每個模組的開發,測試人員開始瞭解軟體需要用的技術、平臺、環境等,並且開始單元測試(也可以是開發人員自己進行單元測試)。當單元測試完成之後,就要進行所謂的feature,即模組功能完成,但是可能存在許多缺陷,比如存在程式碼質量不高,介面對應引數不對、邊界值出現問題等。測試人員就需要去找出其中的缺陷。當feature測試完成之後,就要開始整合測試。把其中的幾個模組聚合在一起,進行整合測試,已發現其中存在的問題。測試人員應該要清楚自己所測試的方向,這樣才能準確的測出BUG。好了,先說這麼多自己的個人理解吧。後續再說吧。