基于RUP的軟件測(cè)試實(shí)踐

出版時(shí)間:2009-9  出版社:清華大學(xué)出版社  作者:姚登峰 主編,韓玉敏 等編著  頁(yè)數(shù):396  

前言

2007年度教育部-IBM精品課程建設(shè)項(xiàng)目配套教材,得到了教育部和IBM中國(guó)公司的大力支持。本課程教材建設(shè)從實(shí)用角度出發(fā),遵循ACM IEEE-CS計(jì)算機(jī)教學(xué)計(jì)劃2001,注意把握學(xué)生已有的知識(shí)背景和接受能力,通過(guò)對(duì)軟件企業(yè)的調(diào)研,了解到用人單位對(duì)測(cè)試人才培養(yǎng)的意見(jiàn)、需求和建議,特別是對(duì)人才知識(shí)結(jié)構(gòu)、能力結(jié)構(gòu)和素質(zhì)等方面的要求,結(jié)合我?!半p證管理型”情況(雙證是指在學(xué)生畢業(yè)時(shí)既有畢業(yè)證,又有IBM課程結(jié)業(yè)證書(shū)),我們將軟件測(cè)試的教學(xué)與認(rèn)證考試有機(jī)地結(jié)合起來(lái),將《國(guó)家軟件評(píng)測(cè)師認(rèn)證考試大綱》所要求的考試內(nèi)容有選擇性地納入到教學(xué)計(jì)劃中來(lái)。合理地制定了教學(xué)大綱。使學(xué)生完成本課程后,能熟練掌握軟件測(cè)試的基本理論和基本技能,為后續(xù)課程學(xué)習(xí)和以后工作奠定堅(jiān)實(shí)的基礎(chǔ),保證教學(xué)目標(biāo)和人才培養(yǎng)目標(biāo)的雙重實(shí)現(xiàn)。本書(shū)以RUP測(cè)試過(guò)程為主線,一步步引導(dǎo)學(xué)生思索,探究軟件開(kāi)發(fā)和測(cè)試實(shí)踐,通過(guò)參與項(xiàng)目使用軟件測(cè)試工具對(duì)軟件進(jìn)行測(cè)試,使學(xué)生掌握崗位操作技能,在實(shí)踐中理解并掌握知識(shí)。理論和實(shí)踐教學(xué)在同一個(gè)項(xiàng)目上實(shí)現(xiàn)了統(tǒng)一,有利于學(xué)生自覺(jué)地應(yīng)用理論知識(shí)解決實(shí)際問(wèn)題。突出學(xué)生在教學(xué)過(guò)程中的主體地位。現(xiàn)代工業(yè)心理學(xué)研究表明,高新技術(shù)工作崗位的工作人員所需要的知識(shí),約一半是介于經(jīng)驗(yàn)性知識(shí)和學(xué)科理論知識(shí)之間的一種特殊的知識(shí),即“勞動(dòng)過(guò)程知識(shí)”。軟件測(cè)試在規(guī)范的軟件生產(chǎn)中屬于軟件過(guò)程工程的重要組成,軟件測(cè)試課程構(gòu)建必須使學(xué)生能在“完整工作過(guò)程”中學(xué)習(xí)。同時(shí)注意引入在國(guó)際市場(chǎng)占有率高、有代表性的自動(dòng)測(cè)試工具,如Mercury、IBM的有關(guān)產(chǎn)品,內(nèi)容涵蓋從安裝到使用,并結(jié)合實(shí)際操作案例進(jìn)行分析講解,以此加深對(duì)概念和方法的理解,達(dá)到技術(shù)運(yùn)用舉一反三和知識(shí)傳授與技能培養(yǎng)并重的目的。按照RUP思想,RUP確定了四級(jí)測(cè)試: 單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試。這些測(cè)試級(jí)別可以是并列的,也可以是遞進(jìn)的,這取決于主測(cè)試計(jì)劃(在項(xiàng)目級(jí))和迭代測(cè)試計(jì)劃(在迭代級(jí))。本書(shū)還是按照單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試的順序來(lái)排列。其中前面又加了基礎(chǔ)部分,為學(xué)習(xí)RUP測(cè)試做準(zhǔn)備。后面加了實(shí)踐案例,運(yùn)用所學(xué)知識(shí)開(kāi)展實(shí)際測(cè)試。本書(shū)在軟件測(cè)試課程內(nèi)容的選取上對(duì)基本知識(shí)的建立、基本技能的培養(yǎng)兩方面有所側(cè)重,為學(xué)生畢業(yè)后從事軟件測(cè)試職業(yè)和專業(yè)持續(xù)發(fā)展奠定基礎(chǔ)。總的來(lái)說(shuō),基于RUP的軟件測(cè)試實(shí)踐課程的教學(xué)內(nèi)容分為以下幾個(gè)部分:第1部分,軟件測(cè)試基礎(chǔ): 包括緒論、RUP的基礎(chǔ)理論、RUP測(cè)試概論、手工測(cè)試與自動(dòng)化測(cè)試等,即軟件測(cè)試的起源和發(fā)展、測(cè)試行業(yè)的現(xiàn)狀以及優(yōu)秀測(cè)試工程師應(yīng)該具備的素質(zhì)、RUP的測(cè)試?yán)碚?、自?dòng)化測(cè)試?yán)碚摵蛯?shí)踐、軟件測(cè)試開(kāi)發(fā)流程等。第2部分,單元測(cè)試: 包括測(cè)試管理、單元測(cè)試。主要講解測(cè)試管理的不同的階段:組織、計(jì)劃、創(chuàng)作、執(zhí)行以及報(bào)告;測(cè)試管理所面臨的挑戰(zhàn);IBM公司對(duì)測(cè)試管理所提的建議;實(shí)施測(cè)試管理自動(dòng)化的原因;使用TestManager實(shí)現(xiàn)測(cè)試管理的自動(dòng)化;IBM公司的單元測(cè)試工具Rational PurifyPlus?;赗UP的軟件測(cè)試實(shí)踐前言第3部分,集成測(cè)試: 包括組件測(cè)試和運(yùn)行時(shí)分析解決方案,主要講解組件的定義、組件測(cè)試的概念、進(jìn)行組件測(cè)試的原因、組件測(cè)試方法、運(yùn)行時(shí)分析原理、運(yùn)行時(shí)分析分類、Test RealTime測(cè)試工具的使用。第4部分,系統(tǒng)測(cè)試: 包括功能測(cè)試、性能測(cè)試,主要講解系統(tǒng)功能測(cè)試所面臨的挑戰(zhàn)、正則表達(dá)式、基于IBM Rational Robot的自動(dòng)化功能測(cè)試框架、IBM性能測(cè)試解決方案Rational Performance Tester。第5部分,驗(yàn)收測(cè)試: 包括易用性和無(wú)障礙測(cè)試,主要講解易用性和無(wú)障礙測(cè)試的基礎(chǔ)理論、軟件易用性和無(wú)障礙的一系列標(biāo)準(zhǔn)和規(guī)范、無(wú)障礙測(cè)試工具的介紹、易用性和無(wú)障礙測(cè)試的方法、無(wú)障礙測(cè)試在Web和軟件方面的應(yīng)用。第6部分,案例分析: 主要講解實(shí)際案例,要求學(xué)生在梳理、總結(jié)課程體系中各項(xiàng)知識(shí)點(diǎn)和技能的基礎(chǔ)上,針對(duì)不同的開(kāi)發(fā)階段,制定相應(yīng)的測(cè)試計(jì)劃,設(shè)計(jì)典型測(cè)試用例,使用軟件測(cè)試技術(shù)和測(cè)試工具,達(dá)到測(cè)試目標(biāo),并進(jìn)行回歸測(cè)試,以實(shí)現(xiàn)軟件測(cè)試各單項(xiàng)專業(yè)與技能整合運(yùn)用的目標(biāo)。RUP理論包含了軟件開(kāi)發(fā)的所有過(guò)程,因此,在學(xué)習(xí)RUP的測(cè)試技術(shù)之前,應(yīng)該先對(duì)RUP的整體理論進(jìn)行了解,包括RUP的特點(diǎn)、原則和概念等,形成對(duì)RUP的整體理論框架的基本認(rèn)識(shí),然后是對(duì)框架中整個(gè)測(cè)試體系的分析和理解。建立框架的目的在于,學(xué)習(xí)完每個(gè)測(cè)試技術(shù)后,能夠?qū)λ鶎W(xué)到的知識(shí)有清晰的定位和明確應(yīng)用的價(jià)值,并且能夠在學(xué)完本教材后,對(duì)RUP的測(cè)試?yán)碚撚型暾目蚣苄屠斫?,為繼續(xù)學(xué)習(xí)RUP的其他知識(shí)打下基礎(chǔ),將所學(xué)到的知識(shí)填充進(jìn)來(lái),最終形成一個(gè)完整的RUP體系。學(xué)習(xí)RUP中的幾個(gè)測(cè)試基礎(chǔ)時(shí),可以按照工業(yè)生產(chǎn)用零件組裝模塊的慣例,由小到大地進(jìn)行學(xué)習(xí),由函數(shù)組裝模塊,再由模塊生成程序,要學(xué)習(xí)的就是其中能保證生產(chǎn)正確進(jìn)行的檢測(cè)方法??梢园验_(kāi)發(fā)過(guò)程中的函數(shù)看作是一個(gè)個(gè)小零件,由這些零件組成具有特定功能的模塊,然后由模塊拼接成具有完整功能的系統(tǒng)。生產(chǎn)零件的時(shí)候,用單元測(cè)試的各種方法來(lái)對(duì)零件進(jìn)行檢測(cè);把零件組裝模塊時(shí),用集成測(cè)試的方法來(lái)檢測(cè)模塊工作是否正常;再用系統(tǒng)測(cè)試的方法來(lái)檢測(cè)由模塊組合起來(lái)的系統(tǒng)是否能正常工作,用性能測(cè)試等技術(shù)來(lái)檢查系統(tǒng)性能是否達(dá)標(biāo),用無(wú)障礙測(cè)試來(lái)檢驗(yàn)系統(tǒng)的可用性和關(guān)于輔助工具的易用性。本書(shū)適合高等院校相關(guān)專業(yè)的學(xué)生及老師,也適合軟件開(kāi)發(fā)、軟件測(cè)試人員及希望未來(lái)從事軟件開(kāi)發(fā)和測(cè)試的人員閱讀。本書(shū)讀者應(yīng)具備: 具有計(jì)算機(jī)的使用經(jīng)驗(yàn),學(xué)過(guò)《軟件工程》或者軟件測(cè)試等基礎(chǔ)知識(shí),具有一門高級(jí)語(yǔ)言如C語(yǔ)言的基本編程基礎(chǔ)。為了幫助讀者學(xué)習(xí)本書(shū),作者除了提供課程網(wǎng)站(www.buu-testing.com)方便讀者學(xué)習(xí)外,還編寫了一本《基于RUP的軟件測(cè)試實(shí)踐題解與上機(jī)指導(dǎo)》,提供本書(shū)中各章習(xí)題的參考答案以及上機(jī)實(shí)習(xí)指導(dǎo)。該書(shū)電子版已放在課程網(wǎng)站提供下載。關(guān)于怎樣學(xué)習(xí)基于RUP的軟件測(cè)試,特提出以下幾點(diǎn)看法。1. 興趣是最好的老師 如何看待軟件測(cè)試工作,有人說(shuō)軟件測(cè)試很有趣,麻煩堆里有快樂(lè),也有人說(shuō)它太枯燥。諸多說(shuō)法表現(xiàn)一個(gè)人對(duì)這項(xiàng)工作的喜好。但筆者要說(shuō)的是,如果對(duì)軟件測(cè)試工作沒(méi)有興趣和熱情很難做到持久。筆者最近參與了一個(gè)軟件測(cè)試項(xiàng)目,在測(cè)試團(tuán)隊(duì)中,有三位是軟件相關(guān)專業(yè)的本科或研究生在讀學(xué)生,基礎(chǔ)都還不錯(cuò)。但是,只有一位表現(xiàn)最突出,因?yàn)樗麑?duì)軟件測(cè)試抱有濃厚的興趣,很珍惜這份社會(huì)實(shí)踐的工作機(jī)會(huì),做事認(rèn)真,找出了很多高優(yōu)先級(jí)的Bug。另兩位同學(xué),在參加項(xiàng)目不到1個(gè)月后就以各種理由退出了。筆者在與他們的交流中,其中一位同學(xué)說(shuō)測(cè)試工作太枯燥,沒(méi)有挑戰(zhàn)性,他更希望做軟件開(kāi)發(fā)工作。這位同學(xué)喜歡做挑戰(zhàn)性的工作無(wú)可厚非,但他缺乏對(duì)軟件測(cè)試技術(shù)最基本的了解,其實(shí)軟件測(cè)試工作同樣具有挑戰(zhàn)性。這位同學(xué)在7天的測(cè)試工作中,只找到了3個(gè)Bug(正常情況下,一般測(cè)試人員每天能找到5個(gè)Bug) 。因此,在績(jī)效評(píng)比中他的成效最低。另一位同學(xué)雖然愿意做軟件測(cè)試,但是他覺(jué)得現(xiàn)在的黑盒測(cè)試太簡(jiǎn)單,學(xué)習(xí)不到測(cè)試技術(shù)的高級(jí)技巧,他更愿意學(xué)習(xí)白盒測(cè)試,能夠自己測(cè)試軟件源代碼。而現(xiàn)在他所做的項(xiàng)目沒(méi)有這部分內(nèi)容,所以盡管他工作成績(jī)也不錯(cuò),但是熱情不大。 因此,建議同學(xué)們?cè)趯W(xué)習(xí)或找工作之前,首先需要了解自己對(duì)軟件測(cè)試是否有興趣或培養(yǎng)起興趣,是否熱愛(ài)軟件測(cè)試工作。只有熱愛(ài)和專注于某項(xiàng)事業(yè)時(shí),才會(huì)做出連自己都感到吃驚的成績(jī)來(lái)。2. 鞏固測(cè)試知識(shí)基礎(chǔ) 練武術(shù)需要先練“蹲馬步”,否則直接學(xué)習(xí)刀槍棍棒等十八般武藝,只能學(xué)到幾招皮毛。武林高手都是基礎(chǔ)牢固,內(nèi)功深厚。做軟件測(cè)試也是這個(gè)道理。如果認(rèn)為學(xué)完本書(shū),就可以成為測(cè)試高手,這是錯(cuò)誤的。本書(shū)的初衷是為初學(xué)者提供一條學(xué)習(xí)測(cè)試實(shí)踐的捷徑,試圖將軟件測(cè)試實(shí)踐涉及的理論講述清楚,降低軟件測(cè)試實(shí)踐的門檻,引領(lǐng)讀者進(jìn)入基于RUP的軟件測(cè)試實(shí)踐大門。師傅領(lǐng)進(jìn)門,修行在個(gè)人。要想成為測(cè)試高手,還需要個(gè)人的努力。個(gè)人盡可能多地參加軟件測(cè)試項(xiàng)目,在實(shí)踐中學(xué)習(xí)技能,積累經(jīng)驗(yàn),不斷分析和總結(jié)軟件開(kāi)發(fā)過(guò)程中可能出錯(cuò)的環(huán)節(jié)。這樣,一名優(yōu)秀的測(cè)試工程師就從軟件測(cè)試的實(shí)踐中脫穎而出了。學(xué)習(xí)本書(shū)需要讀者有良好的測(cè)試知識(shí)基礎(chǔ)。RUP軟件測(cè)試中主要的測(cè)試自動(dòng)化的質(zhì)量完全依賴于測(cè)試案例和測(cè)試數(shù)據(jù)本身的質(zhì)量,如果要設(shè)計(jì)應(yīng)用于自動(dòng)化測(cè)試的數(shù)據(jù),了解劃分等價(jià)類、確定邊界值等測(cè)試基礎(chǔ)知識(shí)是很有必要的。常見(jiàn)一些初學(xué)者還沒(méi)有學(xué)會(huì)測(cè)試的基本概念,就盲目地學(xué)習(xí)各種大型商業(yè)自動(dòng)化測(cè)試軟件,結(jié)果花了很多時(shí)間,只學(xué)會(huì)了工具的具體操作,而沒(méi)有實(shí)際參與測(cè)試的能力。到了實(shí)際測(cè)試項(xiàng)目中,也無(wú)法有效利用工具解決實(shí)際測(cè)試問(wèn)題。實(shí)際上,測(cè)試新手大部分應(yīng)該從手工功能測(cè)試開(kāi)始起步,只有成為測(cè)試高手之后才有能力使用大型自動(dòng)化測(cè)試軟件。另外,測(cè)試工具的操作是很簡(jiǎn)單的技術(shù)問(wèn)題,關(guān)鍵是如何發(fā)揮測(cè)試工具的作用,這需要了解測(cè)試的原理,并通過(guò)原理來(lái)應(yīng)用測(cè)試工具。 高級(jí)的測(cè)試人員除了需要精通測(cè)試技術(shù),還應(yīng)掌握行業(yè)知識(shí),可以提供行業(yè)軟件的測(cè)試和質(zhì)量保證方案。對(duì)于初學(xué)者,要認(rèn)識(shí)到經(jīng)過(guò)不斷努力,才可以成為測(cè)試行業(yè)專家。千里之行,始于足下,目前最重要的是從測(cè)試入門知識(shí)開(kāi)始。所以,初學(xué)者要老老實(shí)實(shí)地學(xué)習(xí)有關(guān)測(cè)試的基礎(chǔ)知識(shí),學(xué)習(xí)各種測(cè)試術(shù)語(yǔ)、測(cè)試概念、測(cè)試分類、測(cè)試的流程、測(cè)試項(xiàng)目的執(zhí)行過(guò)程等。如果連這些都不懂,今后的職業(yè)發(fā)展會(huì)受到限制。學(xué)習(xí)測(cè)試知識(shí)沒(méi)有捷徑,需要從一點(diǎn)一滴學(xué)起,日積月累,需要勤奮,需要思考,需要總結(jié)提高。 3. 為什么要學(xué)習(xí)基于RUP的軟件測(cè)試給大家講個(gè)小故事。有個(gè)英國(guó)人學(xué)煮雞蛋,開(kāi)始,他把雞蛋放到開(kāi)水里煮時(shí)總會(huì)炸裂。他為此想了各種方法,并找到了一個(gè)解決方案: 在雞蛋上打個(gè)孔。但在雞蛋上打孔帶來(lái)了另一個(gè)問(wèn)題: 孔打小了,雞蛋還會(huì)裂;孔打大了,蛋清會(huì)在它凝固以前流出來(lái)。于是,這個(gè)英國(guó)人給一批雞蛋分別打了各種不同孔徑的洞,并記錄下每個(gè)雞蛋孔徑的大小。通過(guò)這一方法,他找到了一個(gè)最合適的大小——既避免了炸裂,又保證蛋清不會(huì)流出來(lái)。這時(shí),雖然煮雞蛋炸裂的問(wèn)題解決了,但這個(gè)英國(guó)人仍然不知道煮多長(zhǎng)時(shí)間才能把雞蛋煮熟。為了解決這個(gè)問(wèn)題,他又開(kāi)始嘗試煮不同時(shí)間的結(jié)果,并從中找出最佳時(shí)間。最后他終于摸索到煮雞蛋的最佳流程和方法。這個(gè)小故事對(duì)很多中國(guó)人來(lái)說(shuō),可能只是覺(jué)得是件可笑的事例,或許認(rèn)為這個(gè)英國(guó)人過(guò)于迂腐,因?yàn)槁斆鞯闹袊?guó)人早就知道把雞蛋放在冷水中與之一起加熱至雞蛋浮起來(lái)就可以了。從煮雞蛋這樣一個(gè)小小的事例上,體現(xiàn)了中國(guó)人和英國(guó)人兩種完全不同的思維習(xí)慣——中國(guó)人憑借自己的經(jīng)驗(yàn)和聰明直奔結(jié)果,而英國(guó)人卻把每一個(gè)過(guò)程細(xì)化后,框定為任何人任何時(shí)候都可操作的流程,然后大家都可按照這個(gè)流程執(zhí)行。現(xiàn)代產(chǎn)品的開(kāi)發(fā)和生產(chǎn)需要制定一個(gè)標(biāo)準(zhǔn)的流程,這個(gè)流程并非憑空臆想,它如同英國(guó)人煮雞蛋一樣,是經(jīng)過(guò)無(wú)數(shù)次的探究而得來(lái)的。只有制定極為詳盡的工業(yè)產(chǎn)品生產(chǎn)過(guò)程規(guī)定,每一步如何做,應(yīng)該達(dá)到何種標(biāo)準(zhǔn),才能真正地將流程應(yīng)用于工業(yè)生產(chǎn)。因?yàn)閰⑴c產(chǎn)品生產(chǎn)流程的工人有成百上千,這么多工人只有遵循一套標(biāo)準(zhǔn)的流程,才能生產(chǎn)出許許多多相同的標(biāo)準(zhǔn)產(chǎn)品。工業(yè)產(chǎn)品可以在出廠前設(shè)置質(zhì)量檢測(cè)來(lái)保證質(zhì)量,但軟件畢竟不同于工業(yè)產(chǎn)品,它只能在開(kāi)發(fā)過(guò)程中監(jiān)測(cè)產(chǎn)品質(zhì)量。在生產(chǎn)過(guò)程中進(jìn)行質(zhì)量檢測(cè)比生產(chǎn)完畢后再進(jìn)行檢測(cè)的方法要先進(jìn)得多,也是保證產(chǎn)品質(zhì)量的需要,它應(yīng)該對(duì)生產(chǎn)全過(guò)程進(jìn)行追蹤。這種方法的思想正是軟件過(guò)程的質(zhì)量保證的精髓所在,基于RUP的軟件測(cè)試就是這樣的過(guò)程質(zhì)量保證思想。在歐美國(guó)家,如果去應(yīng)聘軟件開(kāi)發(fā)者職位,招聘者就會(huì)問(wèn): “你懂RUP嗎?”如果說(shuō)“不懂”,他就會(huì)讓你回家去學(xué)RUP,然后再來(lái)應(yīng)聘。中國(guó)大概還沒(méi)到這個(gè)程度,不過(guò)筆者相信很快中國(guó)的研發(fā)者和經(jīng)理們也會(huì)看到RUP的重要性的。4. 大學(xué)生能學(xué)好RUP理論嗎國(guó)內(nèi)有一種誤解,認(rèn)為 RUP及其配套軟件工具主要用于大型軟件開(kāi)發(fā),學(xué)習(xí)難度大,不適合初學(xué)者。其實(shí)RUP并不是高深莫測(cè),只要有學(xué)習(xí)的基本條件,例如具備計(jì)算機(jī)、相關(guān)軟件知識(shí),還要有學(xué)習(xí)的耐心和毅力,是可以學(xué)好RUP的。而且想要進(jìn)入軟件開(kāi)發(fā)這個(gè)行業(yè),也應(yīng)該從RUP開(kāi)始學(xué)起。從RUP中可以學(xué)到管理的基本常識(shí)、分析設(shè)計(jì)、體系結(jié)構(gòu)設(shè)計(jì)、測(cè)試,在.NET、J2EE、C++或其他平臺(tái)上的實(shí)現(xiàn),還可以學(xué)到進(jìn)度管理、版本控制、分布式運(yùn)算等。因?yàn)閁ML是軟件開(kāi)發(fā)的通用語(yǔ)言,而RUP則蘊(yùn)涵著許多軟件開(kāi)發(fā)者應(yīng)該知道的知識(shí)。并且RUP是一個(gè)穩(wěn)固的基礎(chǔ),在這個(gè)基礎(chǔ)之上,可以開(kāi)發(fā)各種各樣的軟件系統(tǒng),既可開(kāi)發(fā)小型項(xiàng)目,也可以開(kāi)發(fā)像國(guó)防系統(tǒng)、大型銀行系統(tǒng)這樣龐大的項(xiàng)目。所以,建議有志于從事軟件開(kāi)發(fā)和軟件測(cè)試的,都應(yīng)該學(xué)習(xí)RUP。有一個(gè)學(xué)生問(wèn)筆者,國(guó)內(nèi)最流行是XP (Extreme Programming,極限編程)方法,RUP不適合中國(guó)國(guó)情,為什么不學(xué)XP反而要學(xué)RUP呢?其實(shí)這個(gè)問(wèn)題就跟討論C++和Java誰(shuí)好的性質(zhì)是一樣,不能籠統(tǒng)地說(shuō)哪個(gè)好,而且RUP不適合的,XP也未必會(huì)適合??讨矍髣@個(gè)成語(yǔ)故事大家知道,如果把RUP或XP的一整套東西生搬硬套,最后會(huì)導(dǎo)致項(xiàng)目失敗。正所謂只有最適合的方法,沒(méi)有最好的方法。筆者認(rèn)為XP其實(shí)就是小型的RUP。如果要開(kāi)發(fā)一個(gè)小型項(xiàng)目,只有很少的團(tuán)隊(duì)成員,并且要在比較短的時(shí)間內(nèi)完成,就可以并且應(yīng)該使用XP這種輕量級(jí)的方法。這種方法更加靈活,迭代周期更短,但這并不意味著它與RUP相對(duì)立。實(shí)際上隨著項(xiàng)目的增大,團(tuán)隊(duì)的成長(zhǎng),XP也可以轉(zhuǎn)變成為RUP。兩者的確有差異,但這種差異也是因?yàn)椴煌?xiàng)目的需要而造成的。筆者認(rèn)為建模是非常重要的,但XP卻不這么認(rèn)為。當(dāng)我們覺(jué)得應(yīng)該建模的時(shí)候,XPer們就已經(jīng)開(kāi)始編碼了。當(dāng)然,這是符合XP的要求的,的確也獲得了很大的成功。不過(guò),這也把XP限制在小型項(xiàng)目的范圍內(nèi)。如果在大型項(xiàng)目中這么做,系統(tǒng)很快就會(huì)陷入混亂的。當(dāng)然,這并不是XP的錯(cuò),因?yàn)閄P本來(lái)就只是用于小型項(xiàng)目的。目前,RUP應(yīng)用于小型軟件企業(yè)有一定的難度,而關(guān)鍵在于如何根據(jù)項(xiàng)目需要來(lái)進(jìn)行裁減。而且使用RUP需要掌握一定的技巧,正如一個(gè)高明的鐵匠用鐵錘可以打出一把好兵器,如果是普通人搞不好還會(huì)砸到自己的腳。5. 加強(qiáng)學(xué)習(xí)行業(yè)知識(shí) 建議大家利用一切可以利用的時(shí)間學(xué)習(xí),多閱讀測(cè)試書(shū)籍,關(guān)注和游覽測(cè)試網(wǎng)站和論壇。要根據(jù)自己的知識(shí)基礎(chǔ),有選擇性地閱讀測(cè)試書(shū)籍。對(duì)于初學(xué)者應(yīng)先從基礎(chǔ)知識(shí)學(xué)起。正式出版的書(shū)在質(zhì)量和內(nèi)容上都有保證,而有些測(cè)試網(wǎng)站和論壇的文章良莠不齊,有的只有只言片語(yǔ),有的還存在一些錯(cuò)誤。因此,需要有一定的鑒別能力,否則會(huì)被誤導(dǎo),浪費(fèi)時(shí)間。 對(duì)于新進(jìn)入公司的員工,公司一般都要經(jīng)過(guò)短暫的培訓(xùn),發(fā)一些培訓(xùn)材料,這是今后從事工作的最好的第一手材料,針對(duì)性和實(shí)用性都很強(qiáng)。它是公司測(cè)試工作經(jīng)驗(yàn)的總結(jié),也是今后要用到工作中的一些基本的測(cè)試知識(shí)和技術(shù)的介紹。另外還可以借助測(cè)試項(xiàng)目的測(cè)試文檔學(xué)習(xí),包括測(cè)試計(jì)劃、測(cè)試用例、測(cè)試缺陷數(shù)據(jù)庫(kù),可以先看看以前發(fā)現(xiàn)了哪些Bug,這些Bug是怎么被發(fā)現(xiàn)的,有什么規(guī)律和特征,學(xué)習(xí)別人怎么寫測(cè)試缺陷報(bào)告。 測(cè)試人員除了學(xué)習(xí)和掌握測(cè)試技術(shù)外,還需要不斷學(xué)習(xí)行業(yè)知識(shí),這是普通測(cè)試技術(shù)人員與測(cè)試行業(yè)專家的區(qū)別之一。學(xué)習(xí)什么行業(yè)知識(shí)呢?根據(jù)測(cè)試的軟件的應(yīng)用領(lǐng)域決定。例如,如果正在測(cè)試的是電信行業(yè)的應(yīng)用軟件,那么需要學(xué)習(xí)電信行業(yè)知識(shí),包括術(shù)語(yǔ)、業(yè)務(wù)和行業(yè)技術(shù)。怎么學(xué)習(xí)呢?可以與客戶交流,與開(kāi)發(fā)人員交流,看專業(yè)書(shū)和文章。 學(xué)習(xí)行業(yè)知識(shí)是個(gè)不斷進(jìn)步的過(guò)程,每個(gè)行業(yè)都有很系統(tǒng)的知識(shí)架構(gòu)。6. 測(cè)試人員要學(xué)會(huì)思考 測(cè)試是個(gè)技術(shù)工作,要學(xué)會(huì)主動(dòng)思考。測(cè)試問(wèn)題錯(cuò)綜復(fù)雜,需要自己分析問(wèn)題的性質(zhì),嘗試各種解決方法,搜索網(wǎng)上的資料,如果實(shí)在解決不了才向測(cè)試主管求助。 測(cè)試人員如何思考?要根據(jù)碰到的問(wèn)題現(xiàn)象來(lái)思考,是屬于測(cè)試專業(yè)知識(shí)不足引起的,還是測(cè)試用例等測(cè)試文檔模糊、錯(cuò)誤引起的;是個(gè)別現(xiàn)象,還是測(cè)試項(xiàng)目的其他內(nèi)容都存在的普遍現(xiàn)象。測(cè)試要從模擬用戶使用的角度來(lái)看,因此要從最終用戶的角度來(lái)查找問(wèn)題,分析問(wèn)題可能導(dǎo)致的嚴(yán)重程度。 在詢問(wèn)最終的解決方法前,必須根據(jù)自己的經(jīng)驗(yàn)嘗試了各種解決方法,并且盡量把發(fā)現(xiàn)的問(wèn)題和想法告訴測(cè)試主管,證明自己已經(jīng)主動(dòng)思考了,只是沒(méi)有找到更好的解決方法,或者不能確定自己的方法是否可行。 最后我想借用RUP理論創(chuàng)始人之一Ivar Jacobson大師的一句話來(lái)送給讀者: “我從心底里真誠(chéng)地告訴中國(guó)的開(kāi)發(fā)者: 盡快去學(xué)習(xí)RUP!因?yàn)檫@將是大勢(shì)所趨。從RUP中,你將可以學(xué)到很多很多非常有用的知識(shí)。在晚上、在周末、在等女朋友的時(shí)候、在喝茶的時(shí)候,總之,抽出一切時(shí)間來(lái)學(xué)習(xí)RUP。這樣的努力必將得到回報(bào)。這就是我能給中國(guó)的朋友們最好的建議”。在此,由衷地感謝多年來(lái)關(guān)心支持本書(shū)作者的各位朋友。北京大學(xué)杭誠(chéng)方教授、北京聯(lián)合大學(xué)李啟隆教授和毛世春教授等前輩給予了有力的支持和指導(dǎo),并抽出寶貴的時(shí)間審閱此書(shū)。郝増茹、崔桓祥、劉文紅、蔣雪峰、張鵬、李妍、李明等老師也給予了極大的關(guān)心和支持。感謝IBM大學(xué)合作部程郁佳、王立女士,IBM信息無(wú)障礙研究中心覃玉梅經(jīng)理等多年來(lái)全力支持和幫助作者在計(jì)算機(jī)教育和計(jì)算機(jī)普及領(lǐng)域所從事的工作。感謝試用本教材的一些院校,感謝他們提出了一些寶貴的意見(jiàn)。本書(shū)由姚登峰主編,韓玉敏、邱云峰、黃海瑞、李娟參與了部分章節(jié)的編寫,邱云峰還負(fù)責(zé)外文校譯。另外,黃海瑞和陳林波參與了程序調(diào)試工作。由于作者水平和時(shí)間有限,難免有缺點(diǎn)和不足,熱切期望得到專家和讀者的批評(píng)指正。希望本書(shū)能促進(jìn)測(cè)試人員基礎(chǔ)水平的提高,也為更多的人群加入測(cè)試隊(duì)伍提供輔助向?qū)?。如果讀者在學(xué)習(xí)中遇到了難以理解和解決的問(wèn)題,可以訪問(wèn)本課程網(wǎng)站,也可以直接和作者進(jìn)行聯(lián)系。 本書(shū)屬于原創(chuàng),但作者的學(xué)習(xí)成長(zhǎng)離不開(kāi)網(wǎng)絡(luò)和書(shū)籍。在編寫此書(shū)過(guò)程中,作者更是置身于現(xiàn)實(shí)的學(xué)術(shù)氛圍,無(wú)疑要吸納和借鑒專家和同行們先進(jìn)的學(xué)術(shù)思想、方法,在此深深地感謝他們給予作者的啟迪和幫助。

內(nèi)容概要

本書(shū)介紹了RUP的特點(diǎn)、原則和概念及RUP的四級(jí)測(cè)試(單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試)。在內(nèi)容的選取上對(duì)基本知識(shí)的建立、基本技能的培養(yǎng)兩方面有所側(cè)重,讓學(xué)生形成對(duì)RUP的整體理論框架的基本認(rèn)識(shí),為學(xué)生畢業(yè)后從事軟件測(cè)試職業(yè)和在專業(yè)上的持續(xù)發(fā)展奠定基礎(chǔ)。    本書(shū)適合作為高等學(xué)校計(jì)算機(jī)及相關(guān)專業(yè)的本??粕滩?/pre>

書(shū)籍目錄

第1部分 軟件測(cè)試基礎(chǔ)  第1章 緒論    1.1 引言    1.2 錯(cuò)誤是不可避免的    1.3 軟件測(cè)試歷史    1.4 軟件測(cè)試模型的演變    1.5 軟件測(cè)試類型    1.6 軟件測(cè)試工具的發(fā)展    1.7 當(dāng)今測(cè)試行業(yè)狀況    1.8 測(cè)試角色    1.9 職業(yè)規(guī)劃    習(xí)題與思考  第2章 RUP基礎(chǔ)    2.1 RUP的發(fā)展史    2.2 什么是RUP    2.3 RUP的特點(diǎn)    2.4 RUP軟件開(kāi)發(fā)生命周期    2.5 RUP過(guò)程的靜態(tài)結(jié)構(gòu)    2.6 RUP中的最佳軟件實(shí)踐    2.7 RUP中的關(guān)鍵原則    2.8 RUP4+1視圖    2.9 RUP裁剪    2.10 實(shí)踐經(jīng)驗(yàn)    2.11 小結(jié)    習(xí)題與思考  第3章 RUP測(cè)試概論    3.1 軟件測(cè)試    3.2 RUP軟件測(cè)試流程    3.3 質(zhì)量保證    3.4 測(cè)試團(tuán)隊(duì)與角色    3.5 RUP四級(jí)測(cè)試    3.6 RUP測(cè)試解決方案    3.7 RUP使用技巧    3.8 小結(jié)    習(xí)題與思考  第4章 手工測(cè)試與自動(dòng)化測(cè)試    4.1 手工測(cè)試基礎(chǔ)    4.2 自動(dòng)化測(cè)試基礎(chǔ)    4.3 測(cè)試自動(dòng)化技術(shù)    4.4 測(cè)試腳本技術(shù)    4.5 自動(dòng)化測(cè)試實(shí)踐    4.6 自動(dòng)化測(cè)試的優(yōu)缺點(diǎn)    4.7 小結(jié)    習(xí)題與思考第2部分 單元測(cè)試  第5章 測(cè)試管理    5.1 什么是測(cè)試管理    5.2 測(cè)試管理的內(nèi)容    5.3 開(kāi)展測(cè)試管理    5.4 傳統(tǒng)測(cè)試管理的挑戰(zhàn)    5.5 基于RUP的測(cè)試管理經(jīng)驗(yàn)    5.6 測(cè)試管理的自動(dòng)化    5.7 TM的使用    5.8 小結(jié)    習(xí)題與思考  第6章 單元測(cè)試    6.1 單元測(cè)試基礎(chǔ)    6.2 單元測(cè)試策略    6.3 單元測(cè)試工具實(shí)踐    6.4 小結(jié)    習(xí)題與思考第3部分 集 成 測(cè) 試  第7章 組件測(cè)試與運(yùn)行時(shí)分析第4部分 系統(tǒng)測(cè)試  第8章 系統(tǒng)功能測(cè)試    第9章 性能測(cè)試第5部分 驗(yàn)收測(cè)試  第10章 易用性測(cè)試  第11章 無(wú)障礙測(cè)試第6部分 案例分析  第12章 測(cè)試案例附錄A UML基礎(chǔ): 統(tǒng)一建模語(yǔ)言簡(jiǎn)介附錄B 測(cè)試評(píng)估摘要附錄C WCAG 1.0的14條指導(dǎo)原則參考文獻(xiàn)

章節(jié)摘錄

插圖:好處:團(tuán)隊(duì)生產(chǎn)力,更好地結(jié)合商業(yè)需求與軟件系統(tǒng)的開(kāi)發(fā)和運(yùn)作。模式:激勵(lì)團(tuán)隊(duì)成員做得最好。分析師、開(kāi)發(fā)人員和測(cè)試人員的跨職能合作。管理不斷演進(jìn)的工件和任務(wù),通過(guò)集成環(huán)境來(lái)加強(qiáng)對(duì)協(xié)作、進(jìn)度和質(zhì)量的了解。確保業(yè)務(wù)、開(kāi)發(fā)和運(yùn)作團(tuán)隊(duì)作為一個(gè)集成的整體高效地工作。反模式:培養(yǎng)英雄個(gè)體并為他們配備強(qiáng)大的工具。軟件是由才華橫溢、積極上進(jìn)的人員通過(guò)緊密協(xié)作創(chuàng)造出的。許多復(fù)雜的系統(tǒng)要求一些具有不同技能的項(xiàng)目涉眾進(jìn)行協(xié)作,而大型項(xiàng)目通常會(huì)跨越地理和時(shí)間的界限,從而進(jìn)一步增加了開(kāi)發(fā)流程的復(fù)雜性。這就是為什么人員問(wèn)題和協(xié)作(一些人稱之為軟件開(kāi)發(fā)的“軟”元素)會(huì)成為靈活開(kāi)發(fā)團(tuán)隊(duì)的主要側(cè)重點(diǎn)。遵循此原則要求回答以下問(wèn)題,包括:·如何激勵(lì)人們做得最好?·如何在同處一地與分散的軟件團(tuán)隊(duì)中進(jìn)行協(xié)作?·如何在負(fù)責(zé)業(yè)務(wù)、軟件開(kāi)發(fā)和IT操作的團(tuán)隊(duì)之間進(jìn)行協(xié)作?有效協(xié)作的第一步是激勵(lì)團(tuán)隊(duì)中的個(gè)人做得最好。自我管理團(tuán)隊(duì)的概念已在項(xiàng)目團(tuán)體中得到普及,它的基礎(chǔ)是使團(tuán)隊(duì)承諾負(fù)責(zé)應(yīng)交付的成果,然后由團(tuán)隊(duì)決定和判斷影響交付成果的所有問(wèn)題。當(dāng)人們意識(shí)到需要真正負(fù)責(zé)最終結(jié)果時(shí),會(huì)更主動(dòng)地去保質(zhì)完成工作。如RUP的靈活性聲明所陳述的:“為受到激勵(lì)的人員構(gòu)建項(xiàng)目。為他們創(chuàng)造環(huán)境,支持他們的需要并相信他們能完成工作。”第二步是鼓勵(lì)跨職能協(xié)作。如walkerRoyce所說(shuō)的“軟件開(kāi)發(fā)是一項(xiàng)團(tuán)隊(duì)工作?!钡椒ǜ枰獔F(tuán)隊(duì)密切配合工作。我們要拆除分析人員、開(kāi)發(fā)人員和測(cè)試員之間通常存在的壁壘,圖2-9拓寬這些角色的職責(zé)以確保在快速變化的環(huán)境中進(jìn)行有效協(xié)作。每個(gè)成員都需要了解任務(wù)和項(xiàng)目遠(yuǎn)景。在團(tuán)隊(duì)發(fā)展到一定規(guī)模時(shí),要提供有效的協(xié)作環(huán)境。這些環(huán)境使度量值收集和狀態(tài)報(bào)告變得更為方便和自動(dòng)化,并使圍繞著配置管理的構(gòu)建管理和日志自動(dòng)化。這種效率可減少會(huì)議次數(shù),使團(tuán)隊(duì)成員將更多時(shí)間用在具有更高生產(chǎn)率和創(chuàng)造性的活動(dòng)上。這些環(huán)境還應(yīng)通過(guò)簡(jiǎn)化交流、使處于不同地區(qū)和時(shí)區(qū)的團(tuán)隊(duì)成員能夠溝通,以此達(dá)到更有效的協(xié)作。這些環(huán)境的示例包括從共享項(xiàng)目房間到聯(lián)網(wǎng)或基于web的解決方案,例如集成開(kāi)發(fā)環(huán)境、配置和變更管理環(huán)境。

編輯推薦

《基于RUP的軟件測(cè)試實(shí)踐》:教育部IBM高校合作項(xiàng)目精品課程系列教材

圖書(shū)封面

評(píng)論、評(píng)分、閱讀與下載


    基于RUP的軟件測(cè)試實(shí)踐 PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7