即使再優秀的開發者面對軟體出現的問題時測試應該是最好的解決辦法了。軟體測試起到了什麼作用呢?避開晦澀難懂的說明,看看前輩們的名言吧。
「バグを全部見つけるのは無理だと心得よ。」
by cem kaner
(我的心得是,企圖找出所有的bug是不現實的。)
並非迴避責任,軟體是十分複雜的產品,要去除所有的bug是不可能的。
「エラーは見つからないだろうという仮定のもとにテストの計畫を立ててはいけない。」by g.j.ma
yers
(一開始就懷疑是否能找出錯誤是制定不出測試計畫的。)
很多人對自己編寫的程式或參加開發的製品持有沒什麼錯誤的心理,進行開發及測試的。正因為如此,在測試階段往往不容易發現bug,而是產品上市後由使用者指出。
「プログラム開発グループは、自分たちのプログラムをテストしてはいけない。
」by
g.j.ma
yers
(程式開發小組不應該測試自己編寫的程式。)
看似簡單,可執行起來就困難了。為什麼呢?在日本,大部分的測試都是由開發者自己進行的。事實上,即使再小的專案,測試的人員和程式設計的人員應該分開。
「プログラムのある部分でエラーがまだ存在している確率は、すでにその部分で見つかったエラーの數に比例する。
」by
g.j.ma
yers
(程式的某部分中仍然存在錯誤的可能性,與從這部分檢測出的錯誤數成比例。)
bug往往並不是均勻地分散在程式中,而存在於特定的部分。要報告調查,47%的bug存在於程式的4%的某部分。程式由簡單的計算部分和非常複雜的演算法部分等結構組成。複雜的部分往往存在很多bug,所以,這樣的複雜的部分需要徹底測試是重要的手法之一。
總結一下上述名言,要是對讀者在測試手法的選擇和應用上有幫助,是非常榮幸的事情。
「ソフトウェアテストで重要なのは、どの部分にバグが出やすいのか、そこにどのようなテスト手法を適用すれば十分な品質が得られるかを知ることである。
」by高橋壽一
(知道哪個部分容易產生bug,這部分需要應用什麼測試手法能保證質量,是軟體測試中至關重要的。)
■片山徹郎
「テストでプログラム中のバグの存在は示せても、バグが存在しないということは示しえない。」 by ew dijkstra
(程式測試只能證明錯誤的存在,而不能證明錯誤不存在。)
「テストとは、エラーを見つけるつもりでプログラムを実行する過程である。by g.j. myers
(測試就是執行程式發現錯誤的過程。)
「テストとは、プログラムを既知の環境下で選ばれた入力により実行した結果に基づいて、その動作特性を推論する過程である。」 by j.b. goodenough
(測試就是讓程式在已知的環境下根據特定輸入的結果推測執行特性的過程。)
「テストとは、サンプルデータの集合でプログラムを実行することにより、プログラムの動作を調べること。」 by w.r. adrion
(測試就是執行程式,用樣本資料檢驗程式的執行。)
「テストとは、エラーを明らかにするために、プログラムコードを管理しながら実行すること。」 by m.s. deutch
(測試就是管理程式**的同時執行**,以明確錯誤。)
■其他
很多先輩及機構公開的關於測試的定義如下:
「テストとは、手作業又は自動化された方法で、それが規定された要求事項を満たすかどうかを検證し、あるいは期待される結果と実際の結果との差異を識別するために、システム又はシステム構成要素を実行し、又は評価する過程。」by ieee
(測試就是通過手工或自動化的方法,執行及評價系統或系統的構成要素,以明確是否滿足了規定的要求事項或識別期待結果與實際結果的差異。)
「テストとは、エラーを見つけ出すために、サンプル入力を用いてプログラム実行すること。」by m.s. deutch
(測試就是執行程式,應用測試輸入檢出錯誤。)
「テストとは、エラーをなるべく見つけること、そしてエラーが見つからなければそのプログラムの品質に対する確信が増すこと、を目的として、プログラムを選んだデータで実行し、その結果を評価する作業である。」by 玉井哲雄
(測試就是盡量發現多的錯誤,以及若沒有發現錯誤以提高程式品質確認度為目的,通過特定資料執行程式及評價其結果的作業。)
「テストとは、選定したデータの集合でプログラムを実行することにより、品質を評価する作業である。テストの目的は、妥當な品質評価を行うためにエラーを極力摘出し、エラーを摘出しなかった部分については、一定品質を保證することである。」by 保田勝通
(測試就是,由特定的資料集合執行程式以評價其品質的作業。測試的目的為,極力找出錯誤以進行適當的品質評價,對沒有找出錯誤的部分則能保證其一定的品質。)
軟體測試經典名言 鑑其智慧型 取其神髓
軟體測試經典名言 鑑其智慧型 取其神髓 高橋壽一 片山徹郎 等資料整理 翻譯 東北藏 高橋壽一 即使再優秀的開發者面對軟體出現的問題時測試應該是最好的解決辦法了。軟體測試起到了什麼作用呢?避開晦澀難懂的說明,看看前輩們的名言吧。全部見 無理 心得 by cem kaner 我的心得是,企圖找出所有的...
軟體測試 測試用例的經典例子
一 等價類劃分 問 某程式規定 輸入三個整數 a b c分別作為三邊的邊長構成三角形。通過程式判定所構成的三角形的型別,當此三角形為一般三角形 等腰三角形及等邊三角形時,分別作計算 用等價類劃分方法為該程式進行測試用例設計。三角形問題的複雜之處在於輸入與輸出之間的關係比較複雜。解 分析題目中給出和隱...
軟體測試 測試用例的經典例子
一 等價類劃分 問 某程式規定 輸入三個整數 a b c分別作為三邊的邊長構成三角形。通過程式判定所構成的三角形的型別,當此三角形為一般三角形 等腰三角形及等邊三角形時,分別作計算 用等價類劃分方法為該程式進行測試用例設計。三角形問題的複雜之處在於輸入與輸出之間的關係比較複雜。解 分析題目中給出和隱...