本書是軟件測試方法與技術(shù)的配套實驗教材, 主要包括軟件測試的原理與方法、軟件測試的技術(shù)和軟件測試項目實踐三部分。其中軟件測試的原理與方法主要是黑盒測試的4種經(jīng)典方法: 等價類劃分、邊界值法、判定表法和因果圖法的實驗原理及具體實驗案例的講述, 還有白盒測試的經(jīng)典方法的實驗原理及具體實驗案例的講述; 軟件測試的技術(shù)主要是單元測試、集成測試和系統(tǒng)測試原理及具體實驗案例的講述; 利用TestDirector進行軟件測試管理。
軟件測試是一門對于工程實踐能力要求很高的課程,在整個計算機科學(xué)與技術(shù)學(xué)科的人才培養(yǎng)規(guī)劃里,是一門偏重于實踐的核心課程,旨在培養(yǎng)學(xué)生的計算機實際開發(fā)能力。目前,許多高校在計算機專業(yè)或軟件工程專業(yè)開設(shè)了這門課程,可見軟件測試課程的重要性。
事實上,由于軟件測試這門課程重在培養(yǎng)學(xué)生的工程實踐能力的特點,從軟件測試教學(xué)大綱和教學(xué)計劃可以看出,所安排的實驗節(jié)數(shù)非常多,應(yīng)該是全部學(xué)時的一半以上,因為學(xué)生只有通過一個個軟件測試案例的實驗,才能夠真正掌握軟件測試的各種方法并且做到融會貫通。
目前,軟件測試課程的教材數(shù)量多而且質(zhì)量都很好,但是基于培養(yǎng)軟件測試實際動手能力的實驗配套教材還不多,學(xué)生反映即使買到了合適的軟件測試教材,但是很難買到真正實用的軟件測試實驗指導(dǎo)用書。原因是這類書籍由于偏重實踐環(huán)節(jié),所涉及的課題和實驗的準備需要很長的時間,不像一般的理論教材那么好寫,所以出書十分困難。但是學(xué)生要想掌握軟件測試方法,在實際測試環(huán)節(jié)中,又迫切地需要好的、詳細介紹實施軟件測試方法具體步驟的實驗教程。
本人多年從事軟件工程、軟件測試及軟件質(zhì)量保證的研究并講授相關(guān)課程,長期指導(dǎo)學(xué)生進行實際的軟件測試活動,在軟件測試的課堂上多年采用清華大學(xué)出版社出版、朱少民老師編寫的《軟件測試方法和技術(shù)》一書,按照朱老師教材的章節(jié)編寫思路,結(jié)合自己多年輔導(dǎo)學(xué)生進行軟件測試學(xué)習(xí)所積累的案例,編寫了這本軟件測試的實驗教程。本書充實了軟件測試方法和技術(shù)的實驗環(huán)節(jié)案例,詳細描述了各種軟件測試常用的方法和技術(shù)在實踐中應(yīng)用的步驟和過程,由淺入深、循序漸進,有些章節(jié)的實驗甚至分步驟詳盡地做了闡述。所以,本書應(yīng)該是一本容易入門的、淺顯易懂的實驗教材,特別適合作為一本學(xué)習(xí)軟件測試的入門實驗指導(dǎo)書。書中所涉及的所有案例都是筆者這些年在課堂上帶著學(xué)生反復(fù)實踐過的,相信會對學(xué)習(xí)軟件測試的讀者有所啟發(fā)。
本書設(shè)想成為清華大學(xué)出版社出版、朱少民老師編寫的《軟件測試方法和技術(shù)》一書的配套實驗類指導(dǎo)書,因此在內(nèi)容與篇章結(jié)構(gòu)上盡量與朱老師的原書一致,可以說本書是《軟件測試方法和技術(shù)》一書的實踐教程和重要補充。同時,本書注重實踐環(huán)節(jié)的積累,用具體的案例來講述軟件測試理論應(yīng)用的具體方法,實用性和指導(dǎo)性很強。
本書對軟件測試的主要方法和重要技術(shù)均做了介紹,本著理論與實踐相結(jié)合的原則,在介紹軟件測試某個具體的方法之后,以實驗指導(dǎo)書的形式相應(yīng)地給出一個利用此方法的實驗案例,便于讀者學(xué)習(xí)實踐。
在各章的實驗指導(dǎo)書中,除說明本次實驗的目的、所要求的實驗環(huán)境、本次實驗的內(nèi)容之外,對于實驗相關(guān)的軟件測試理論,都以【實驗原理】的形式再次簡明扼要地加以闡明;對于軟件測試初學(xué)者感覺困難的地方,都以【實驗步驟】的形式予以具體講解,讀者只要按照實驗步驟進行操作,就可以很容易地完成整個實驗。提醒讀者不要急于閱讀【實驗指導(dǎo)】部分,因為【實驗指導(dǎo)】是類似習(xí)題答案的內(nèi)容,因此為了培養(yǎng)和鍛煉自己的軟件測試能力,可以先不閱讀【實驗指導(dǎo)】,自己完成整個實驗之后再閱讀這一部分,看看自己的測試設(shè)計方法與【實驗指導(dǎo)】有什么不同,從而達到學(xué)習(xí)提高的目的。對于初學(xué)者容易犯的錯誤都以【實驗中需要注意的問題】的形式進行了概括總結(jié)。有些實驗還有【實驗拓展】部分,提出實驗拓展問題,或者是需要進一步進行實驗的內(nèi)容。
對于本實驗教程的所有實驗案例,讀者都可以參閱書中的【實驗指導(dǎo)】,自己進行相同的實驗操作,所涉及的被測程序和相應(yīng)的軟件系統(tǒng)平臺、測試工具軟件,都可以從本書指定的配套網(wǎng)站下載使用。
本書所涉及的多個測試實驗均可被讀者實際操作,相信許多讀者憑借本書,可以真正擺脫只能學(xué)習(xí)軟件測試理論,無法動手進行實際測試的困境。各章的實驗指導(dǎo)闡述細致,淺顯易懂。
本書參考了軟件測試的相關(guān)書籍以及互聯(lián)網(wǎng)上的一些軟件測試理論文章,特別是朱少民老師編寫的《軟件測試方法和技術(shù)》一書,對于各位作者表示深深的謝意。
本書還參考了我的學(xué)生郭瑩和范逸飛的畢業(yè)設(shè)計論文。作為畢業(yè)設(shè)計導(dǎo)師,向他們表示感謝。
由于本人水平有限,盡管參照了很多的文獻和聽取多方的意見,但由于時間問題和本人能力問題,書中難免存在漏洞與誤區(qū),還望讀者朋友指正。
第1篇 軟件測試的原理與方法
第1章 測試用例設(shè)計
1.1 軟件測試的基本理念
1.1.1 軟件質(zhì)量
1.1.2 軟件缺陷
1.1.3 軟件測試
1.2 測試用例設(shè)計
1.2.1 測試用例的類型
1.2.2 測試用例的一般結(jié)構(gòu)
1.2.3 設(shè)計測試用例需考慮的因素
第2章 黑盒測試原理與方法
2.1 黑盒測試概述
2.2 等價類劃分法
2.2.1 等價類劃分法的原理
2.2.2 等價類劃分法的實驗
2.3 邊界值分析法
2.3.1 邊界值分析法的原理
2.3.2 邊界值分析法的實驗
2.4 判定表法
2.4.1 判定表法的原理
2.4.2 判定表法的實驗
2.5 Pair—wise方法
2.5.1 Pair—wise方法的原理
2.5.2 Pair—wise方法的實驗
第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.2 白盒測試實驗
第2篇 軟件測試的技術(shù)
第4章 單元測試
4.1 單元測試概述
4.1.1 什么是單元測試
4.1.2 單元測試中的測試用例設(shè)計
4.1.3 單元測試的過程
4.1.4 單元測試的主要測試手段
4.2 單元功能測試
4.2.1 單元功能測試概述
4.2.2 單元功能測試實驗
4.3 單元邏輯覆蓋測試
4.3.1 單元邏輯覆蓋測試概述
4.3.2 靜態(tài)測試
4.3.3 驅(qū)動程序和樁程序
4.3.4 利用驅(qū)動程序和樁程序進行單元測試
4.3.5 利用JUnit進行單元測試
4.3.6 利用JUnit進行單元測試的實驗
第5章 集成和系統(tǒng)測試
5.1 集成測試概述
5.2 系統(tǒng)測試概述
5.3 利用業(yè)務(wù)流進行集成和系統(tǒng)功能測試
5.4 利用業(yè)務(wù)流進行集成和系統(tǒng)功能測試的實驗
5.5 系統(tǒng)性能測試
5.5.1 性能測試定義與要點
5.5.2 性能測試術(shù)語
5.5.3 性能測試流程
5.5.4 系統(tǒng)性能測試軟件LoadRunner
5.5.5 利用LoadRunner軟件進行系統(tǒng)性能測試的實驗
附錄A 管理信息系統(tǒng)單元測試共通點檢查表
附錄B “實驗設(shè)備管理系統(tǒng)”程序安裝說明
參考文獻