內容簡介

本書涵蓋了軟件測試的方方面面︰軟件測試如何適應軟件開發過程,基本的和高級的軟件測試技術,在常見的測試任務中運用測試技能,使用自動化提高測試的效率,測試工作的計劃和文檔化,有效地報告發現的問題,衡量測試工作的成效和產品的改進,測試和質量保證的區別,尋求軟件測試員的工作。

本書適合軟件測試人員及希望未來從事軟件測試的其他專業人員閱讀,也適合相關專業的學生及老師參考。
 

目錄

出版才者的話
專家指導委員會
譯者序
前言
第一部分 軟件測試綜述
第1章 軟件測試的背景
1.1 臭名昭著的軟件錯誤用例研究
1.1.1 迪斯尼的獅子王,1994—1995
1.1.2 英特爾奔騰浮點除法缺陷,1994
1.1.3 美國航天局火星極地登陸者號探測器,1999
1.1.4 愛國者導彈防御系統,1991
1.1.5 千年蟲問題,大約1974
1.1.6 危險的預見,2004
1.2 軟件缺陷是什麼
1.2.1 軟件失敗的術語
1.2.2 軟件缺陷的官方定義
1.3 為什麼會出現軟件缺陷
1.4 軟件缺陷的修復費用
1.5 軟件測試員究竟做些什麼
1.6 優秀的軟件測試員應具備的素質
1.7 小結
1.8 小測驗
第2章 軟件開發的過程
2.1 產品的組成部分
2.1.1 軟件產品需要多少投入
2.1.2 軟件產品由哪些部分組成
2.2 軟件項目成員
2.3 軟件開發生命周期模式
2.3.1 大爆炸模式
2.3.2 邊寫邊改模式
2.3.3 瀑布模式
2.3.4 螺旋模式
2.4 小結
2.5 小測驗
第3章 軟件測試的實質
3.1 測試的原則
3.1.1 完全測試程序是不可能的
3.1.2 軟件測試是有風險的行為
3.1.3 測試無法顯示潛伏的軟件缺陷
3.1.4 找到的軟件缺陷越多,就說明軟件缺陷越多
3.1.5 殺蟲劑怪事
3.1.6 並非所有軟件缺陷都要修復
3.1.7 什麼時候才叫缺陷難以說情
3.1.8 產品說明書從沒有最終版本
3.1.9 軟件測試員在產品小組中不受歡迎
3.1.10 軟件測試是一項講究條理的技術專業
3.2 軟件測試的術語和定義
3.2.1 精確和準確
3.2.2 確認和驗證
3.2.3 質量和可靠性
3.2.4 測試和質量保證(QA)
3.3 小結
3.4 小測驗
第二部分 測試基礎
第4章 檢查產品說明書
4.1 開始測試
4.1.1 墨盒測試和白盒測試
4.1.2 靜態測試和動態測試
4.1.3 靜態黑盒測試、測試產品說明書
4.2 對產品說明書進行高級審查
4.2.1 假設自己是客戶
4.2.2 研究現有的標準和規範
4.2.3 審查和測試類似軟件
4.3 產品說明書的低層次測試技術
4.3.1 產品說明書屬性檢查清單
4.3.2 產品說明書術語檢查清單
4.4 小結
4.5 小測驗
第5章 帶上眼罩測試軟件
5.1 動態黑盒測試︰帶上眼罩測試軟件
5.2 通過性測試和失效性測試
5.3 等價類劃分
5.4 數據測試
5.4.1 邊界條件
5.4.2 次邊界條件
5.4.3 默認、空白、空值、零值和無
5.4.4 非法、錯誤、不正確和垃圾數據
5.5 狀態測試
5.5.1 測試軟件的邏輯流程
5.5.2 失敗狀態測試
5.6 其他黑盒測試技術
5.6.1 像笨拙的用戶那樣做
5.6.2 在已經找到的軟件缺陷的地方再找找
5.6.3 像黑客一樣考慮問題
5.6.4 憑借經驗、直覺和預感
5.7 小結
5.8 小測驗
第6章 檢查代碼
6.1 靜態白盒測試︰檢查設計和代碼
6.2 正式審查
6.2.1 同事審查
6.2.2 走查
6.2.3 檢驗
6.3 編碼標準和規範
6.3.1 編碼標準和規範示例
6.3.2 獲取標準
6.4 通用代碼審查清單
6.4.1 數據引用錯誤
6.4.2 數據聲明錯誤
6.4.3 計算錯誤
6.4.4 比較錯誤
6.4.5 控制流程模式
6.4.6 子程序參數錯誤
6.4.7 輸入/輸出錯誤
6.4.8 其他檢查
6.5 小結
6.6 小測驗
第7章 帶上X光眼鏡測試軟件
7.1 動態白盒測試
7.2 動態白盒測試和調試
7.3 分段測試
7.3.1 單元測試和集成測試
7.3.2 單元測試示例
7.4 數據覆蓋
7.4.1 數據流
7.4.2 次邊界
7.4.3 公式和等式
7.4.4 錯誤強制
7.5 代碼覆蓋
7.5.1 程序語句和代碼行覆蓋
7.5.2 分支覆蓋
7.5.3 條件覆蓋
7.6 小結
7.7 小測驗
第三部分 運用測試技術
第8章 配置測試
8.1 配置測試綜述
8.1.1 分離配置缺陷
8.1.2 計算工作量
8.2 執行任務
8.2.1 確定所需的硬件類型
8.2.2 確定有哪些廠商的硬件、型號和驅動程序可用
8.2.3 確定可能的硬件特性、模式和選項
8.2.4 將確定後的硬件配置縮減為可控制的範圍
8.2.5 明確與硬件配置有關的軟件唯一特性
8.2.6 設計在每一種配置中執行的測試用例
8.2.7 在每種配置中執行測試
8.2.8 反復測試直到小組對結果滿意為止
8.3 獲得硬件
8.4 明確硬件標準
8.5 對其他硬件進行配置測試
8.6 小結
8.7 小測驗
第9章 兼容性測試
9.1 兼容性測試綜述
9.2 平台和應用程序版本
9.2.1 向後和向前兼容
9.2.2 測試多個版本的影響
9.3 標準和規範
9.3.1 高級標準和規範
9.3.2 低級標準和規範
9.4 數據共享兼容性
9.5 小結
9.6 小測驗
第10章 外國語言測試
第11章 易用性測試
第12章 測試文檔
第13章 軟件安全性測試
第14章 網站測試
第四部分 測試的補充
第15章 自動測試和測試工具
第16章 缺陷轟炸和beta測試
第五部分 計劃測試工作
第17章 計劃測試工作
第18章 編寫和跟蹤測試用例
第19章 報告發現的問題
第20章 成效評價
第六部分 軟件測試的未來
第21章 軟件質量保證
第22章 軟件測試員的職業
附錄A 小測驗問題解答
 

20世紀40年代,當Grace Hopper中尉第一次在“事件記錄本”中把引起“MARK II”計算機死機的飛蛾注明為“第一個發現蟲子的實例”後,人們便將計算機和軟件的錯誤戲稱為蟲子(Bug)或臭蟲,用此描述再恰當不過。對于軟件開發人員和使用者來說,軟件的缺陷就像自然界中人類的天敵臭蟲一樣,是一場惡夢,輕則給用戶帶來不便,如軟件界面的不一致;重則造成重大生命財產的損失,如1996年阿麗亞娜5型火箭第一次鑒定發射的失敗以及第一次海灣戰爭中愛國者導彈在沙特阿拉伯的多哈誤炸28名美國士兵的事件。要找出軟件中的問題,軟件測試是唯一的手段。

1983年IEEE對軟件測試進行了準確的定義︰軟件測試是使用人工或自動手段來運行或測定某個系統的過程,檢驗它是否滿足規定的需求或是弄清預期結果與實際結果之間的差別。

軟件測試是軟件開發中不可或缺的環節,也是軟件工程的重要組成部分,軟件測試的效果直接關系到軟件產品的質量。在國外一些成熟和大型的軟件企業,軟件測試人員和開發人員的比例已到達了3:5的程度。近年來,我國的軟件企業已越來越意識到軟件測試的重要性,逐漸加大軟件測試在整個軟件開發的系統工程中的比重。根據調查顯示,軟件產品在成本上的分配比例一般來說是︰“需求分析”佔6%,“設計”佔5%,“編程”佔7%,“測試”佔15%,“運行維護”佔67%。而測試成本所佔的比例還在逐漸上升。因此,如何提高我國軟件行業的測試水平,是擺在我國廣大軟件行業管理人員和從業人員面前的一個緊迫任務。

本書是《軟件測試》的第2版,作者根據自己在軟件行業豐富的經歷和測試經驗,對軟件測試知識體系結構中的測試基本原理和技術、測試的環境和工具、測試管理進行了全面、生動的描述,書中列舉了許多例子,特別適合初次接觸,而又對測試具有濃厚興趣的讀者參考。本書作者還在第1版的基礎上,根據軟件測試技術的發展,新增加了軟件安全性測試這個新興的話題。本書可作為高等院校軟件工程專業的本科或工程碩士的參考教材,也可供有志于將軟件測試作為職業的人員全面學習軟件測試技術。

本書的翻譯力求忠實于原文,但由于譯者的知識水平有限,不當之處在所難免,懇請廣大讀者批評指正。參加本書翻譯、審校和其他輔助工作的還有︰任雲濤、王勛、劉洋、唐妍、許黎、鐘永松,在此一並表示感謝。

譯者
2006年元月
網路書店 類別 折扣 價格
  1. 新書
    87
    $157