內容簡介

本書全面論述了軟件測試的基本原理和最佳實踐,介紹了最近出現的極限測試和即興測試等新的測試方法。本書介紹了全球團隊的個人、組織結構和模型等問題。在介紹綜合性理論知識的同時,強調實際經驗。本書在介紹黑盒測試和白盒測試等傳統方法的同時,還介紹了測試的很多實際問題,例如國際化測試和回歸測試等。

本書的突出特點是從工程實踐的角度,比較全面地討論棘手問題的具體應對方法和相應的風險,站在比較高的層次上討論軟件測試工程的整體把握方法。全書在各章附有許多實際問題的思考題,幫助讀者更深刻地理解這些現實問題。

本書可作為高等院校軟件工程和測試方面的基礎教材,對軟件開發和測試人員解決實際問題也有較高的參考價值。
 

目錄

目錄
出版者的話
譯者序

前言
第一部分 寫作線索
第1章 測試原理
1.1 生產軟件中的測試背景
1.2 本章介紹
1.3 不完善的車
1.4 Dijkstra定律
1.5 及時測試
1.6 聖人和貓
1.7 首先測試測試用例
1.8 殺蟲劑悖論
1.9 護航艦隊與破布
1.10 橋上的警察
1.11 鐘擺的終結
1.12 黑衣人
1.13 自動化綜合癥
1.14 小結
第2章 軟件開發生存周期模型
2.1 軟件項目的階段
2.1.1 需求獲取和分析
2.1.2 策劃
2.1.3 設計
2.1.4 開發或編碼
2.1.5 測試
2.1.6 部署和維護
2.2 質量、質量保證和質量控制
2.3 測試、驗證和確認
2.4 表示不同階段的過程模型
2.5 生存周期模型
2.5.1 瀑布模型
2.5.2 原型和快速應用開發模型
2.5.3 螺旋或迭代模型
2.5.4 V字模型
2.5.5 改進型V字模型
2.5.6 各種生存周期模型的比較
第二部分 測試類型
第3章 白盒測試
3.1 白盒測試的定義
3.2 靜態測試
3.2.1 人工靜態測試
3.2.2 靜態分析工具
3.3 結構測試
3.3.1 單元/代碼功能測試
3.3.2 代碼覆蓋測試
3.3.3 代碼復雜度測試
3.4 白盒測試中的挑戰
第4章 黑盒測試
4.1 黑盒測試的定義
4.2 黑盒測試的意義
4.3 黑盒測試的時機
4.4 黑盒測試的方法
4.4.1 基于需求的測試
4.4.2 正面和負面測試
4.4.3 邊界值分析
4.4.4 決策表
4.4.5 等價劃分
4.4.6 基于狀態或基于圖的測試
4.4.7 兼容性測試
4.4.8 用戶文檔測試
4.4.9 領域測試
4.5 小結
第5章 集成測試
5.1 集成測試的定義
5.2 集成測試作為一種測試類型
5.2.1 自頂向下集成
5.2.2 自底向上集成
5.2.3 雙向集成
5.2.4 系統集成
5.2.5 選擇集成方法
5.3 集成測試作為一個測試階段
5.4 場景測試
5.4.1 系統場景
5.4.2 用例場景
5.5 缺陷圍殲
5.5.1 選擇缺陷圍殲的頻度和持續時間
5.5.2 選擇合適的產品版本
5.5.3 對缺陷圍殲的目標進行溝通
5.5.4 建立和監視實驗室
5.5.5 采取行動解決問題
5.5.6 優化缺陷圍殲所涉及的工作
5.6 小結
第6章 系統測試和確認測試施
6.1 系統測試概述
6.2 實施系統測試的原因
6.3 功能測試與非功能測試
6.4 功能系統測試
6.4.1 設計/體系結構驗證
6.4.2 業務垂直測試
6.4.3 部署測試
6.4.4 貝塔測試
6.4.5 符合性的認證、標準和測試
6.5 非功能系統測試
6.5.1 設置配置
6.5.2 提出進入與退出準則
6.5.3 平衡關鍵資源
6.5.4 可伸縮性測試
6.5.5 可靠性測試
6.5.6 壓力測試
6.5.7 互操作性測試
6.6 確認測試
6.6.1 確認準則
6.6.2 選擇確認測試的測試用例
6.6.3 執行確認測試
6.7 測試階段小結
6.7.1 多階段測試模型
6.7.2 多個發布版本的處理
6.7.3 誰負責實施與何時實施
第7章 性能測試
7.1 引論
7.2 決定性能測試的要素
7.3 性能測試的方法論
7.3.1 收集需求
7.3.2 編寫測試用例
7.3.3 自動化性能測試用例
7.3.4 執行性能測試用例
7.3.5 分析性能測試結果
7.3.6 性能調諧
7.3.7 性能基準測試
7.3.8 能力策劃
7.4 性能測試工具
7.5 性能測試的過程
7.6 挑戰
第8章 回歸測試
8.1 回歸測試的定義
8.2 回歸測試的類型
8.3 回歸測試的時機
8.4 回歸測試的方法
8.4.1 實施第一次“冒煙”或“摸底”測試
8.4.2 理解選擇測試用例的準則
8.4.3 測試用例分類
8.4.4 選擇測試用例的方法論
8.4.5 重新設置測試用例以進行回歸測試
8.4.6 總結歸測試的結果
8.5 回歸測試的最佳實踐
第9章 國際化[I18n]測試
9.1 引言
9.2 國際化介紹
9.2.1 語言的定義
9.2.2 字符集
9.2.3 屬地
9.2.4 本章使用的術語
9.3 國際化測試的測試階段
9.4 有效化測試
9.5 屬地測試
9.6 國際化確認
9.7 假語言測試
9.8 語言測試
9.9 本地化測試
9.10 國際化使用的工具
9.11 挑戰與問題
第10章 即興測試
10.1 即興測試概述
10.2 伙伴測試
10.3 結對測試
10.4 探索式測試
10.5 迭代式測試
10.6 敏捷與極限測試
10.6.1 XP工作流
10.6.2 通過例子進行小結
10.7 缺陷播種
10.8 小結
第三部分 特殊測試專題
第11章 面向對象系統的測試
第12章 可使用性與易獲得性測試
第四部分 測試中的人員和組織問題
第13章 常見人員問題
第14章 測試團隊的組織結構
第五部分 測試管理與自動化
第15章 測試策劃、管理、執行與報告
第16章 軟件測試自動化
第17章 測試指標和度量
參考文獻
 

近年來,已經有不少關于軟件測試方面的專著和教材介紹到我國,我國軟件測試行業的學者和資深人士撰寫的專著也已面市。但是,目前軟件測試行業仍處于高度依賴個人經驗和直覺的狀態,教材上介紹的測試方法多種多樣,而如何選擇和組合運用來達到更好的效果,在很大程度上依靠個人的經驗。此外,軟件測試的成果並沒有很可靠的、普遍適用的評價準則,經過測試的軟件所殘留的缺陷並沒有可靠的方法驗證。由于決定軟件測試項目質量的因素有很多,因此不同的測試項目之間通常並不具備很強的可比性。所以,對于軟件測試人員來說,關鍵的並不在于掌握多少測試技巧,而在于通過大量的實踐和思考,對軟件測試有怎樣的理解和理念,在于怎樣運用這些技巧。

本書的突出特點是不回避軟件測試普遍存在的實際問題(例如時間壓力、風險壓力、人員管理問題等),從工程實踐的角度,比較全面地討論了這些棘手問題的具體應對方法和相應的風險,站在比較高的層次上全面地討論了軟件測試工程的整體把握方法。全書的主題設置和論述體現出作者在軟件測試和軟件工程領域有豐富的實踐經驗。每章所附的思考題大多是實際中遇到的問題。通過對這些問題的認真思考,相信讀者會對這些現實問題有更深刻的理解。

在翻譯過程中,除了對原文的個別錯誤進行了相應的更正外,我們力求忠實于原文。但是,由于譯者的知識水平和實際工作經驗有限,不當之處在所難免,懇請讀者批評指正。參加本書翻譯、審校和其他輔助工作的還有李津津、黃慧菊、耿民和屈健。

譯者
2008年3月
網路書店 類別 折扣 價格
  1. 新書
    87
    $235