注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)實(shí)用軟件測(cè)試指南

實(shí)用軟件測(cè)試指南

實(shí)用軟件測(cè)試指南

定 價(jià):¥22.00

作 者: (美)James A.Whittaker著;馬良荔,俞立軍譯;馬良荔譯
出版社: 電子工業(yè)出版社
叢編項(xiàng): 國(guó)外IT精品叢書(shū)
標(biāo) 簽: 軟件測(cè)試及維護(hù)

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787505381605 出版時(shí)間: 2003-01-01 包裝: 平裝
開(kāi)本: 24cm 頁(yè)數(shù): 196 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)所給出的測(cè)試并非傳統(tǒng)意義上基于書(shū)面測(cè)試計(jì)劃實(shí)施的循規(guī)蹈矩的測(cè)試,也沒(méi)有討論艱深的測(cè)試?yán)碚?,而是直接面向?qū)嶋H應(yīng)用,使測(cè)試員進(jìn)行“自由”的測(cè)試,提出了對(duì)軟件進(jìn)行攻擊的思想,從軟件的用戶界面、文件系統(tǒng)接口和操作系統(tǒng)接口三個(gè)最易于攻擊的方面來(lái)實(shí)施攻擊,并利用了所開(kāi)發(fā)的軟件,幫助測(cè)試員簡(jiǎn)單地捕獲異常并強(qiáng)制執(zhí)行一般錯(cuò)誤,最終能更快、更多地發(fā)現(xiàn)軟件中的錯(cuò)誤,改進(jìn)軟件,提高軟件質(zhì)量。本書(shū)可作為計(jì)算機(jī)專業(yè)高年級(jí)本科生、計(jì)算機(jī)專業(yè)研究生的軟件測(cè)試教材或參考書(shū),也可作為軟件開(kāi)發(fā)人員、軟件測(cè)試人員和軟件管理人員的參考手冊(cè)。前言關(guān)于本書(shū)本書(shū)基本上沒(méi)有包含測(cè)試?yán)碚?。闡述測(cè)試?yán)碚摰臅?shū)很多,但講述一個(gè)好的測(cè)試員如何開(kāi)展實(shí)際測(cè)試的書(shū)基本上沒(méi)有。所以我寫(xiě)了這樣一本書(shū)。我試圖進(jìn)入我所遇到過(guò)的最佳測(cè)試員的大腦并把最好的技術(shù)形成文字,指出隱錯(cuò)在什么地方以及如何最有效地找到這些隱錯(cuò)的方式繼而獲得可發(fā)布的高質(zhì)量產(chǎn)品。我寫(xiě)本書(shū)的第二個(gè)目的是使它閱讀起來(lái)充滿趣味性并且包含的技術(shù)應(yīng)用起來(lái)也很有趣。我愛(ài)中斷軟件。我希望我的熱情將為軟件測(cè)試行業(yè)增添光彩的一頁(yè)。關(guān)于本書(shū)讀者聽(tīng)起來(lái)有點(diǎn)像推銷,但每一個(gè)讀者都可以從本書(shū)中獲得一些他所需要的知識(shí)。它以一種吸引初學(xué)者的指導(dǎo)風(fēng)格書(shū)寫(xiě),而最老練的測(cè)試人員可能欣賞本書(shū)獨(dú)特的內(nèi)容。當(dāng)然,目前我作為大學(xué)教授也意味著我在寫(xiě)作本書(shū)時(shí)要把學(xué)生放在心上。我把本書(shū)用于本科生和研究生測(cè)試課程。學(xué)會(huì)如何成為一個(gè)優(yōu)秀的測(cè)試員并超越基礎(chǔ)理論是很重要的。關(guān)于本書(shū)的例子本書(shū)給出了來(lái)自實(shí)際應(yīng)用軟件的真實(shí)錯(cuò)誤消息和奇異行為(我敢說(shuō)是“隱錯(cuò)”嗎?)的屏幕顯示。包含這些例子用來(lái)描述本書(shū)所講述的攻擊技術(shù)。其中有些是大隱錯(cuò),而有些只是小麻煩。例子的主要目的是教學(xué)和說(shuō)明。這并不意味著僅僅作為大隱錯(cuò)的例子(盡管其中的一些確實(shí)如此),也不意味著我們?nèi)⌒ιa(chǎn)該應(yīng)用程序的公司。實(shí)際上,我精心選擇了市場(chǎng)領(lǐng)頭羊的應(yīng)用程序,所以能夠被絕大多數(shù)讀者立即認(rèn)可。更進(jìn)一步,每個(gè)例子都來(lái)自我平常交往的、其開(kāi)發(fā)實(shí)踐和文化是我所推崇的公司生產(chǎn)的應(yīng)用程序。我提醒讀者在應(yīng)用本書(shū)中的技術(shù)或再現(xiàn)屏幕顯示的隱錯(cuò)時(shí)要謹(jǐn)慎。許多攻擊會(huì)使應(yīng)用程序崩潰。確信在嘗試攻擊之前保存了你的工作,確保不丟失任何重要的數(shù)據(jù)。關(guān)于本書(shū)的組織本書(shū)由四部分組成。第一部分是對(duì)軟件中斷研究領(lǐng)域的介紹,以適應(yīng)講授對(duì)軟件和它所工作的復(fù)雜環(huán)境的理解。對(duì)軟件測(cè)試人員而言,理解軟件環(huán)境很重要,這樣他們就注意到軟件內(nèi)部在做什么以及它是如何與環(huán)境交互的。沒(méi)有這樣的理解,很難成為一個(gè)成功的軟件中斷者。第二部分詳細(xì)介紹了能通過(guò)用戶接口應(yīng)用的特定攻擊。無(wú)論接口是GUI或是程序的API,這一部分將會(huì)給出如何從接口攻擊軟件,何時(shí)應(yīng)用每個(gè)攻擊,攻擊在破壞軟件時(shí)為什么會(huì)成功以及是怎樣成功的。這一部分可能成為在對(duì)你的軟件目標(biāo)進(jìn)行攻擊行動(dòng)時(shí)最常引用的部分。第三部分討論了非人類系統(tǒng)接口的測(cè)試問(wèn)題(即如何測(cè)試應(yīng)用程序的文件系統(tǒng)、操作系統(tǒng)、軟件接口)。討論了攻擊策略。介紹了一個(gè)新的稱為HEAT的工具,即不利環(huán)境應(yīng)用程序測(cè)試器(HostileEnvironmentApplicationTester)。你可以在本書(shū)選配光碟中找到“CannedHEAT”。CannedHEAT允許測(cè)試員以一種稱為運(yùn)行期故障植入的技術(shù)來(lái)測(cè)試系統(tǒng)接口。第四部分是結(jié)論,結(jié)論是軟件測(cè)試永遠(yuǎn)不能真正地掌握。相反,它要求不斷地學(xué)習(xí)并獲取新的技能。這部分我們描述了在Florida技術(shù)學(xué)院發(fā)生的兩件有趣的充滿教訓(xùn)的事。你可以把它們用在你?氖笛槭依鎩K潛Vつ馨蜒昂陀槔止餐諶氳餃魏穩(wěn)砑饈苑絞街校?附錄B~附錄D為軟件中斷者提供了特定的資源。附錄B討論了運(yùn)行期故障植入。附錄C描述了CannedHEAT的使用,CannedHEAT是選配光碟上的一個(gè)易于使用的故障植入工具。附錄D重印了在“IEEESoftware”上已發(fā)表過(guò)的一篇文章,它描述了一般的軟件測(cè)試過(guò)程。這些附錄補(bǔ)充了本書(shū)的內(nèi)容,可以單獨(dú)閱讀或作為本書(shū)的附加材料閱讀。附錄A包含了常用編程術(shù)語(yǔ)的定義。關(guān)于本書(shū)的內(nèi)容本書(shū)脫離了傳統(tǒng)的測(cè)試。在傳統(tǒng)測(cè)試中,測(cè)試員準(zhǔn)備好書(shū)面測(cè)試規(guī)劃并把它作為測(cè)試軟件時(shí)的腳本,測(cè)試提前規(guī)劃好并以一種機(jī)械的方式執(zhí)行。本書(shū)中的測(cè)試技術(shù)是靈活的,而傳統(tǒng)測(cè)試是嚴(yán)格的。如果在一個(gè)軟件項(xiàng)目中,需求改變了,隱錯(cuò)變成特性,進(jìn)度壓力強(qiáng)制計(jì)劃重新評(píng)估時(shí),就需要靈活性。軟件測(cè)試并不是可以預(yù)先確定測(cè)試什么、執(zhí)行計(jì)劃并按計(jì)劃來(lái)實(shí)施的一門(mén)精確的科學(xué),這需要上帝般的遠(yuǎn)見(jiàn)。不是靠計(jì)劃,而是靠智能、洞察力、經(jīng)驗(yàn)以及對(duì)隱錯(cuò)隱藏位置的敏銳判斷等來(lái)指導(dǎo)測(cè)試人員。本書(shū)會(huì)幫助測(cè)試員開(kāi)發(fā)這種洞察力。作為測(cè)試規(guī)劃和自動(dòng)測(cè)試執(zhí)行的一個(gè)長(zhǎng)期擁護(hù)者,我對(duì)這種自由形式測(cè)試的第一個(gè)感覺(jué)是懷疑。但是,事實(shí)簡(jiǎn)單地駁倒了我。聰明的人做的探索測(cè)試找到了所有我見(jiàn)過(guò)的最佳隱錯(cuò)。同樣是這些聰明的人在最佳測(cè)試自動(dòng)化上也做得更好,不是一個(gè)小的零頭而是一個(gè)數(shù)量級(jí)。當(dāng)項(xiàng)目需做困難的、認(rèn)真的測(cè)試時(shí),往往是調(diào)入最聰明的測(cè)試員而不是測(cè)試計(jì)劃或測(cè)試自動(dòng)化。當(dāng)需要做出關(guān)鍵的運(yùn)載決定時(shí),聰明的管理員會(huì)忽略測(cè)試計(jì)劃的部署而注重最有經(jīng)驗(yàn)的測(cè)試員的意見(jiàn)。我不久就確信我那宏大的全自動(dòng)測(cè)試研究議程需要認(rèn)真地重新考慮。我對(duì)那些知道產(chǎn)品并找出了所有隱錯(cuò)的人表示出強(qiáng)烈的興趣。我可以證實(shí)這些民間方法沒(méi)有腳本并設(shè)法拋開(kāi)了壓在桌上文檔下的正式的測(cè)試計(jì)劃。被提問(wèn)時(shí),他們總是回答:“那份計(jì)劃并未瞄準(zhǔn)隱錯(cuò)所在之處?!北緯?shū)中體現(xiàn)的技術(shù)不僅允許測(cè)試員脫離腳本,也鼓勵(lì)他們這么做。不要盲目相信文檔,它們可能是過(guò)期的或在產(chǎn)品可測(cè)試之前寫(xiě)的。相反,應(yīng)該開(kāi)動(dòng)腦筋!睜大眼睛!想一點(diǎn),測(cè)試一點(diǎn),再想一點(diǎn)。但是,不要認(rèn)為我反對(duì)計(jì)劃或文檔。本書(shū)簡(jiǎn)單地講授測(cè)試中的緊張工作計(jì)劃。不要認(rèn)為測(cè)試自動(dòng)化是令人沮喪的。有許多重復(fù)復(fù)雜的任務(wù)需要好的工具(確實(shí),收錄在本書(shū)選配光碟上的就是這樣的工具)。但是,工具永遠(yuǎn)不能代替智能使用。測(cè)試員思考并使用工具收集數(shù)據(jù),以幫助他們更加快速有效地探究應(yīng)用程序。如果給本書(shū)一句題詞,則可以是:熟悉你的產(chǎn)品,考慮你的步調(diào),并讓經(jīng)驗(yàn)引導(dǎo)你。甚至可以更簡(jiǎn)單:開(kāi)動(dòng)腦筋,睜開(kāi)眼睛……測(cè)試!我長(zhǎng)期熱衷于研究這樣的測(cè)試。我通過(guò)觀察人們以及研究他們的隱錯(cuò)來(lái)做這項(xiàng)工作。為找出隱錯(cuò),最好的測(cè)試員在做些什么?最佳隱錯(cuò)有什么共同之處?有沒(méi)有方法推廣有經(jīng)驗(yàn)的測(cè)試員的行動(dòng)使得缺乏經(jīng)驗(yàn)的測(cè)試員能做得更好?我的意圖是捕捉我所遇到的最優(yōu)秀的測(cè)試員的最好思想,并把這些思想形成文字,以這種方式使測(cè)試新手能夠?qū)W到有用的知識(shí)并變得更好。如果本書(shū)內(nèi)容未能達(dá)到這個(gè)目標(biāo),那只是因?yàn)槲覀€(gè)人的溝通技巧不足所致,而不是我的研究主體本身的技巧的反映。本書(shū)中好的內(nèi)容都出自同事們細(xì)致研究過(guò)的工作。我感謝他們公開(kāi)了他們找出的隱錯(cuò)以及他們的洞察力。本書(shū)中的錯(cuò)誤全都?xì)w咎于我。把測(cè)試的輝煌景象形成文字對(duì)于像我這樣的凡人來(lái)說(shuō)是很困難的事。關(guān)于本書(shū)的補(bǔ)充材料本書(shū)提供了一張選配光碟,它包含了兩個(gè)非常有用的工具,它們是Florida技術(shù)學(xué)院的教員和學(xué)生編寫(xiě)的。CannedHEAT和HolodeckLite是運(yùn)行期監(jiān)視和故障植入工具,運(yùn)行于WindowsNT系列的平臺(tái)上。兩個(gè)工具都很容易使用,在本書(shū)的第三部分和附錄中有詳細(xì)的解釋。另外,www.HowToBreakSoftware.com是獲得最近的工具更新、隱錯(cuò)故事和與破壞軟件原理相關(guān)的技術(shù)公告等信息的在線通道。JamesA.WhittakerMelbourne,F(xiàn)loridaAugust2001

作者簡(jiǎn)介

  James A.Whittaker博士是佛羅里達(dá)技術(shù)學(xué)院計(jì)算機(jī)科學(xué)系統(tǒng)軟件工程研究中心的教授和主任。他也是一位出色的演說(shuō)家和產(chǎn)業(yè)界顧問(wèn),經(jīng)常出現(xiàn)在擁護(hù)的僅容立足的地方,為全球一流的企業(yè)講演軟件測(cè)試。他的工作已經(jīng)贏得了無(wú)數(shù)“最佳表述”和“年度優(yōu)秀教師”獎(jiǎng)。

圖書(shū)目錄

獻(xiàn)辭                  
 譯者序                  
 前言                  
 各章概要                  
 致謝                  
 第一部分引言                  
 第1章  指導(dǎo)軟件測(cè)試的故障模型                  
 軟件測(cè)試的目的                  
 理解軟件行為                  
 理解軟件環(huán)境                  
 人類用戶                  
 文件系統(tǒng)用戶                  
 操作系統(tǒng)用戶                  
 軟件用戶                  
 理解軟件能力                  
 測(cè)試輸入                  
 測(cè)試輸出                  
 測(cè)試數(shù)據(jù)                  
 測(cè)試計(jì)算                  
 總結(jié)和結(jié)論                  
 練習(xí)                  
 參考文獻(xiàn)                  
 第二部分  用戶接口攻擊                  
 第2章  用戶接口測(cè)試:輸入和輸出                  
 使用故障模型指導(dǎo)測(cè)試                  
 探究輸入域                  
 攻擊l應(yīng)用輸入強(qiáng)制產(chǎn)牛所有錯(cuò)誤信息                  
 攻擊2施加強(qiáng)制軟件建立有默認(rèn)值的輸入                  
 攻擊3探究允許的字符集合和數(shù)據(jù)類型                  
 攻擊4輸入緩沖區(qū)溢出                  
 攻擊5找出可能會(huì)相互作用的輸人, 并測(cè)試輸人值組                  
 攻擊6多次重復(fù)同樣的輸人或輸人序列                  
 探究輸出                  
 攻擊7強(qiáng)制每個(gè)輸入產(chǎn)牛不同的輸出                  
 攻擊8強(qiáng)制產(chǎn)生無(wú)效輸出                  
 攻擊9強(qiáng)制改變輸出屬性                  
 攻擊10強(qiáng)制屏幕刷新                  
 結(jié)論                  
 練習(xí)                  
 參考文獻(xiàn)                  
 第3章  用戶接口測(cè)試:數(shù)據(jù)和計(jì)算                  
 盒內(nèi)測(cè)試                  
 探究存儲(chǔ)的數(shù)據(jù)                  
 攻擊11使用不同的初始條件施加輸入                  
 攻擊12強(qiáng)制數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)過(guò)多或過(guò)少的值                  
 攻擊13考察修改內(nèi)部數(shù)據(jù)約束的可選方法                  
 探究計(jì)算和功能部件的交互作用                  
 攻擊14將無(wú)效操作數(shù)和操作符結(jié)合進(jìn)行實(shí)驗(yàn)                  
 攻擊15強(qiáng)制函數(shù)進(jìn)行遞歸調(diào)用                  
 攻擊16強(qiáng)制計(jì)算結(jié)果過(guò)大或過(guò)小                  
 攻擊門(mén)發(fā)現(xiàn)不充分地共享數(shù)據(jù)或交互的功能部件                  
 結(jié)論                  
 練習(xí)                  
 第三部分  系統(tǒng)接口攻擊                  
 第4章  文件系統(tǒng)接口測(cè)試                  
 從文件系統(tǒng)接口攻擊軟件                  
 基于介質(zhì)的攻擊                  
 攻擊1按容量填滿文件系統(tǒng)                  
 攻擊2強(qiáng)制介質(zhì)忙或不可用                  
 攻擊3毀壞介質(zhì)                  
 基于文件的攻擊                  
 攻擊4賦給無(wú)效文件名                  
 攻擊5改變文件訪問(wèn)許可                  
 攻擊6更改或破壞文件內(nèi)容                  
 結(jié)論                  
 練習(xí)                  
 第5章  軟件/操作系統(tǒng)接口測(cè)試                  
 從軟件接口攻擊軟件                  
 記錄-仿真攻擊                  
 植入能執(zhí)行所有錯(cuò)誤處理代碼并經(jīng)歷所有異常的故障                  
 植入易于在測(cè)試實(shí)驗(yàn)室模擬的故障                  
 植入在真實(shí)領(lǐng)域中可能出現(xiàn)的故障                  
 觀察-失效攻擊                  
 結(jié)論                  
 練習(xí)                  

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)