《軟件測試實(shí)踐教程》全面、系統(tǒng)地闡述了軟件測試的基礎(chǔ)知識(shí)和應(yīng)用技術(shù),是一小非常實(shí)用的軟件測試教材。傘書共8章,第1章介紹了軟件測試的基礎(chǔ)知識(shí),包括軟件測試的概念、軟件測試的分類和軟件測試的背景等;第2章介紹了白盒測試的測試用例設(shè)計(jì)方法和典型案例;第3章介紹了黑盒測試的測試用例設(shè)計(jì)方法和典型案例;第4章介紹了一種新的測試方法一蛻變測試方法和典型案例;第5章介紹了測試流程和測試文檔的基小知識(shí),列舉了測試計(jì)劃、測試說明和測試報(bào)告等測試文檔的例子;第6章介紹了功能測試工具WinRunnet‘以及使用WinRunner的最佳實(shí)踐;第7章介紹了壓力測試工具LoadRunner以及使用LoadRurmer的最佳實(shí)踐;第8章介紹了測試管理工具TestDirector以及使用TestDirectot的最佳實(shí)踐。
小書可以作為大學(xué)小科軟件測試課程的教材,也可以作為軟件測試人員、軟件項(xiàng)目經(jīng)理和需要了解軟件測試的各級(jí)管理人員的參考書。
軟件測試是軟件開發(fā)過程中的一個(gè)重要環(huán)節(jié),是保證軟件質(zhì)量的關(guān)鍵技術(shù)之一。軟件測試工作開展的好壞,直接決定著軟件產(chǎn)品質(zhì)量的優(yōu)劣。在實(shí)際軟件開發(fā)過程中,國際化大型軟件公司在軟件測試上投入了大量的人力和物力,以確保軟件質(zhì)量能夠滿足軟件用戶的要求,以贏得軟件產(chǎn)品質(zhì)量的美譽(yù)度。近年來,隨著國內(nèi)軟件產(chǎn)業(yè)的蓬勃發(fā)展,專業(yè)化軟件產(chǎn)品及服務(wù)軟件企業(yè)的出現(xiàn)和產(chǎn)業(yè)規(guī)模的擴(kuò)大,軟件測試的重要性日益凸顯,軟件測試行業(yè)在國內(nèi)也漸漸興起,并逐步擴(kuò)大。2007年第四季度以后,我國IT產(chǎn)業(yè)對(duì)軟件測試人才的需求呈現(xiàn)進(jìn)一步升級(jí)的態(tài)勢。國家信息產(chǎn)業(yè)部提供的數(shù)據(jù)顯示,目前軟件測試人才的缺口已經(jīng)達(dá)到40~50萬,軟件測試人才正在成為我國IT行業(yè)最緊缺的人才之一,軟件測試能力不足已成為制約我國軟件產(chǎn)業(yè)發(fā)展的重要因素。
雖然越來越多的大學(xué)畢業(yè)生和其他行業(yè)人員有志于從事軟件測試行業(yè),卻苦于缺乏系統(tǒng)的軟件測試?yán)碚撝R(shí)和實(shí)用測試技術(shù)而被用人企業(yè)拒之門外,進(jìn)一步加劇了軟件測試業(yè)務(wù)的人才供需矛盾。本書正是針對(duì)該問題,總結(jié)了作者多年從事軟件測試課程教學(xué)的經(jīng)驗(yàn)和在軟件公司從事軟件測試的工作經(jīng)歷,在參閱了大量國內(nèi)外相關(guān)文獻(xiàn)資料,進(jìn)行總結(jié)和充實(shí)后,完成了軟件測試使用技術(shù)的編寫工作,試圖為軟件人才的培養(yǎng)和鍛煉提供幫助和指導(dǎo)。
出版說明
前言
第1章 軟件測試概述
1.1 軟件危機(jī)
1.1.1 什么是軟件危機(jī)
1.1.2 軟件危機(jī)的內(nèi)在原因
1.1.3 軟件工程和軟件危機(jī)的解決
1.2 軟件測試的基本知識(shí)
1.2.1 軟件測試的背景和意義
1.2.2 軟件測試的定義
1.2.3 軟件測試的分類
1.2.4 軟件測試的過程
1.2.5 軟件測試與軟件開發(fā)過程的關(guān)系
1.3 正確認(rèn)識(shí)軟件測試
1.4 軟件測試職業(yè)
1.4.1 軟件測試職業(yè)和職位
1.4.2 軟件測試職業(yè)素質(zhì)
1.4.3 軟件測試人才現(xiàn)狀
1.5 習(xí)題
第2章 白盒測試
2.1 白盒測試概述
2.2 白盒測試的測試用例設(shè)計(jì)方法
2.3 白盒測試的典型案例
2.3.1 邏輯覆蓋法典型案例
2.3.2 路徑覆蓋法典型案例
2.4 白盒測試的工具
2.4.1 白盒測試工具的分類
2.4.2 開放源碼的Junit的使用
2.5 習(xí)題
第3章 黑盒測試
3.1 黑盒測試概述
3.2 黑盒測試的主要測試用例設(shè)計(jì)方法
3.2.1 等價(jià)類劃分
3.2.2 邊界值分析
3.2.3 因果圖
3.2.4 判定表驅(qū)動(dòng)測試
3.2.5 正交實(shí)驗(yàn)設(shè)計(jì)法
3.2.6 用例場景法
3.3 黑盒測試的典型案例
3.3.1 使用等價(jià)類劃分法設(shè)計(jì)測試用例
3.3.2 使用邊界值分析法設(shè)計(jì)測試用例
3.3.3 使用因果圖法設(shè)計(jì)測試用例
3.3.4 使用判定表法設(shè)計(jì)測試用例
3.3.5 使用正交表法設(shè)計(jì)測試用例
3.3.6 使用用例場景法設(shè)計(jì)測試用例
3.4 習(xí)題
第4章 蛻變測試
4.1 蛻變測試概述
4.2 蛻變測試的典型案例
4.2.1 數(shù)學(xué)應(yīng)用案例
4.2.2 圖論應(yīng)用案例
4.2.3 搜索程序應(yīng)用案例
4.2.4.編譯器應(yīng)用案例
4.2.5 圖形圖像應(yīng)用案例
4.2.6 其他應(yīng)用案例
4.3習(xí)題
第5章 測試流程和測試文檔
5.1 測試流程
5.2 測試文檔概述
5.3 編寫測試文檔
5.3.1 測試計(jì)劃的內(nèi)容和實(shí)例
5.3.2 測試說明的內(nèi)容和實(shí)例
5.3.3 測試撤告的內(nèi)容和實(shí)例
5.4 習(xí)題
第6章 WinRunnet功能測試工具的運(yùn)用
6.1 WinRunner介紹
6.1.1 WinRunner的測試模式
6.1.2 WinRunner的測試過程
6.1.3 WinRunner的樣本軟件
6.2.1 WinRunner使用概述
6.2.1 WinRunner主窗口
6.2.2 winRunner測試窗口
6.2.3 加載WinRunner插件窗口
6.3 WinRunner如何識(shí)別GUI對(duì)象
6.3.1 識(shí)別GUI對(duì)象
6.3.2 使用GuISpy查看GUI對(duì)象的屬性
6.4 WinRunner如何學(xué)習(xí)被測軟件的GUI對(duì)象
6.4.1 兩種GUImap的工作模式
6.4.2 WinRunner.學(xué)習(xí)GUI對(duì)象的方式
6.5 錄制測試腳本
6.5.1 兩種錄制模式
6.5.2 如何錄制測試腳本
6.5.3 如何閱讀測試腳本
6.5.4 執(zhí)行測試腳本并分析結(jié)果
6.6 同步點(diǎn)
6.6.1 何時(shí)使用同步點(diǎn)
6.6.2 如何建立同步點(diǎn)
6.6.3 執(zhí)行測試并分析結(jié)果
6.7 GUI對(duì)象檢查點(diǎn)
6.7.1 檢查GUI對(duì)象
6.7.2 插入GUI對(duì)象檢查點(diǎn)
6.7.3 執(zhí)行測試并分析結(jié)果
6.8 圖像檢查點(diǎn)
6.8.1 檢查應(yīng)用程序的圖像
6.8.2 建立圖像檢查點(diǎn)
6.8.3 檢視結(jié)果
6.9 使用TSL修改腳本
6.9.1 錄制基本腳本
6.9.2 使用函數(shù)生成器在測試腳本中加入函數(shù)
6.9.3 在測試腳本中加入判斷式
6.9.4 執(zhí)行測試腳木
6.10 建立數(shù)據(jù)驅(qū)動(dòng)腳本
6.10.1 數(shù)據(jù)驅(qū)動(dòng)腳本概述
6.10.2 將測試腳本轉(zhuǎn)換為數(shù)據(jù)驅(qū)動(dòng)測試腳本
6.10.3 使用regularexpression調(diào)整測試腳本
6.10.4 執(zhí)行腳本并分析結(jié)果
6.11 文字檢查點(diǎn)
6.11.1 文字檢查點(diǎn)概述
6.11.2 建立文字檢查點(diǎn)
6.11.3 檢查文字
6.11.4 執(zhí)行測試腳本
6.12 建立批測試
6.12.1 批測試概述
6.12.2 建立批測試
6.12.3 執(zhí)行批測試
6.12.4 分析測試結(jié)果
6.13 維護(hù)測試腳本
6.13.1 在GUIMap中改變GUI對(duì)象
6.13.2 新增GUl對(duì)象到GuIMap
6.13.3 使用RunWizard自動(dòng)更新GUIMap
6.14 習(xí)題
第7章 LoadRunner負(fù)載測試工具的運(yùn)用
7.1 LoadRunner負(fù)載測試工具概述
7.1.1 LoadRunner的重要組件
7.1.2 LoadRunrler的例子應(yīng)用程序
7.2 LoadRunner的測試過程
7.3 制訂負(fù)載測試計(jì)劃
7.3.1 分析應(yīng)用程序
7.3.2 確定測試目標(biāo)
7.3.3 計(jì)劃怎樣執(zhí)行LoadRunner
7.4 開發(fā)測試腳本
7.4.1 錄制基本的用戶腳本
7.4.2 完善測試腳本
7.4.3 運(yùn)行參數(shù)設(shè)定
7.4.4 單機(jī)運(yùn)行測試腳本
7.5 創(chuàng)建運(yùn)行場景
7.5.1 選擇場景類型ManualScenario
7.5.2 選擇場景類型ManualScenariowithPercentageMode
7.5.3 選擇場景類型Goal.OrientedScenario
7.6 分析以及監(jiān)視場景
7.7 分析實(shí)時(shí)監(jiān)視圖表
7.8 利用Analysis分析結(jié)果
7.8.1 分析事務(wù)的響應(yīng)時(shí)間
7.8.2 分解頁面
7.8.3 確定WebServer的問題
7.9 習(xí)題
第8章 TestDireclor測試管理工具的運(yùn)用
8.1 TestDil:ector概述
8.1.1 TestDirector簡介
8.1.2 TestDirector的窗口
8.1.3 TestDirector的測試管理過程
8.2 需求定義
8.2.1 定義測試范圍
8.2.2 創(chuàng)建測試需求大綱
8.2.3 定義需求
8.2.4 分析需求定義
8.2.5 TestDirector需求模塊
8.3 計(jì)劃測試
8.3.1 定義測試策略
8.3.2 定義測試主題
8.3.3 定義測試
8.3.4 建立測試覆蓋
8.3.5 設(shè)計(jì)測試步驟
8.3.6 自動(dòng)測試
8.3.7 分析測試計(jì)劃
8.4 執(zhí)行測試
8.4.1 建立測試集合
8.4.2 測試執(zhí)行表
8.4.3 執(zhí)行測試
8.4.4 分析測試結(jié)果
8.5 跟蹤缺陷
8.5.1 添加缺陷
8.5.2 檢查新缺陷
8.5.3 修改開放缺陷
8.5.4 驗(yàn)證缺陷
8.5.5 分析缺陷數(shù)據(jù)
8.6 習(xí)題
參考文獻(xiàn)
軟件測試在軟件生存期中占有非常突出的位置,是保證軟件質(zhì)量的重要手段。本章主要介紹軟件測試技術(shù)的基礎(chǔ)知識(shí),包括軟件危機(jī)的內(nèi)在原因及軟件工程的解決方法、軟件測試的背景和意義、軟件測試的概念、軟件測試的過程、軟件測試的職業(yè)和職位等基礎(chǔ)理論知識(shí),這是學(xué)習(xí)本書后續(xù)內(nèi)容的必要準(zhǔn)備。
1.1 軟件危機(jī)
在20世紀(jì)60年代,由于軟件的規(guī)模越來越大,軟件變得越來越復(fù)雜,在軟件的開發(fā)過程中出現(xiàn)了軟件危機(jī)。下邊分別介紹軟件危機(jī)的概念、軟件危機(jī)的內(nèi)在原因和軟件危機(jī)的解決方法。
1.1.1 什么是軟件危機(jī)
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)被廣泛地應(yīng)用。為了適應(yīng)在廣泛應(yīng)用情況下出現(xiàn)的各種各樣的復(fù)雜問題,需要嚴(yán)格地保證軟件系統(tǒng)的質(zhì)量。但是,軟件系統(tǒng)的開發(fā)需要投入大量的人力、物力和財(cái)力,相對(duì)于硬件系統(tǒng)投資而言,軟件投資所占比例越來越大。同時(shí),開發(fā)軟件本質(zhì)上是一個(gè)“思考”的工程,開發(fā)人員有各自的編程習(xí)慣和思維方式,可憑個(gè)人的愛好進(jìn)行工作,沒有統(tǒng)一的標(biāo)準(zhǔn)可以遵循,因此系統(tǒng)的質(zhì)量難以得到保證。大約在20世紀(jì)60年代,面對(duì)愈來愈復(fù)雜的大型軟件系統(tǒng)開發(fā),出現(xiàn)了“軟件危機(jī)”,主要表現(xiàn)為以下幾個(gè)方面。
1)軟件項(xiàng)目經(jīng)常無法按期完成,超出經(jīng)費(fèi)預(yù)算,軟件質(zhì)量難以控制。
2)開發(fā)過程管理不規(guī)范,約定不嚴(yán)密,文檔書寫不完整,使得軟件維護(hù)費(fèi)用高,有些系統(tǒng)甚至無法進(jìn)行修改。
3)缺乏嚴(yán)密有效的質(zhì)量檢測手段,交付給用戶的軟件質(zhì)量差,在運(yùn)行中出現(xiàn)許多問題,甚至帶來嚴(yán)重的后果。
4)系統(tǒng)更新?lián)Q代難度大。