




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件測(cè)試
掌握有效測(cè)試軟件的方法與技術(shù)
主講:鄒軍國(guó)
目錄
1.測(cè)試的常識(shí)與道理
2.測(cè)試的分類(lèi)與比較
3.測(cè)試人員的組織
4.企業(yè)的測(cè)試策略
5.測(cè)試規(guī)范
6.軟件產(chǎn)品的主要測(cè)試內(nèi)容及技術(shù)
世上不存搬有蛹的軟件
Page2
1.測(cè)試的常識(shí)與道理
1.1你真的懂測(cè)試嗎
?編程大師說(shuō):沒(méi)有錯(cuò)誤的程序世間難求。(《編程之道》)
?你在學(xué)校里學(xué)過(guò)測(cè)試嗎?(讀到博士可能也不懂測(cè)試)
?你所在的企業(yè)重視測(cè)試嗎?(小公司程序員的技能更加全面)
?臨時(shí)抱佛腳行嗎?你以為有文檔模板就會(huì)測(cè)試了嗎?
?如果不懂得有效地進(jìn)行測(cè)試,你不僅得不到功勞,也沒(méi)人欣賞你的苦勞,你擁有最多
的將只是疲勞。
?職業(yè)軟件工程師應(yīng)當(dāng)掌握需求開(kāi)發(fā)、系統(tǒng)設(shè)計(jì)、編程、測(cè)試、維護(hù)所有技能。
1.2測(cè)試的目的是什么
?測(cè)試的目的是為了發(fā)現(xiàn)盡可能多的缺陷,不是為了說(shuō)明軟件中沒(méi)有缺陷。
?推論:成功的測(cè)試在于發(fā)現(xiàn)了迄今尚未發(fā)現(xiàn)的缺陷。所以測(cè)試人員的職責(zé)是設(shè)計(jì)這樣
的測(cè)試用例,它能有效地揭示潛伏在軟件里的缺陷。
?千萬(wàn)不要將“測(cè)試”與“演示”混為一談。例如科研鑒定會(huì)。
?如果產(chǎn)品通過(guò)了嚴(yán)格的測(cè)試,大家不要不吭氣,應(yīng)當(dāng)好好地宣傳一把。
Page3
1.測(cè)試的常識(shí)與道理
1.3一些常識(shí)和經(jīng)驗(yàn)之談
?測(cè)試能提高軟件的質(zhì)量,但是提高質(zhì)量不能依賴(lài)測(cè)試。
?測(cè)試只能證明缺陷存在,不能證明缺陷不存在。“徹底地測(cè)試”難以成為現(xiàn)實(shí),要考
慮時(shí)間、費(fèi)用等限制,不允許無(wú)休止地測(cè)試。我們應(yīng)當(dāng)祈禱:軟件的缺陷在產(chǎn)品被淘
汰之前一直沒(méi)有機(jī)會(huì)發(fā)作。
?測(cè)試的主要困難是不知道如何進(jìn)行有效地測(cè)試,也不知道什么時(shí)候可以放心地結(jié)束測(cè)
試。
?每個(gè)開(kāi)發(fā)人員應(yīng)當(dāng)測(cè)試自己的程序(份內(nèi)之事),但是不能作為該程序已經(jīng)通過(guò)測(cè)試
的依據(jù)(所以項(xiàng)目需要獨(dú)立測(cè)試人員)。
?80-20原則:80%的缺陷聚集在20%的模塊中,經(jīng)常出錯(cuò)的模塊改錯(cuò)后還會(huì)經(jīng)常出錯(cuò)
?測(cè)試應(yīng)當(dāng)循序漸進(jìn),不要企圖一次性干完,注意“欲速則不達(dá)”。
Page4
2.測(cè)試的分類(lèi)與比較
2.1測(cè)試方式
?白盒測(cè)試:關(guān)心軟件內(nèi)部設(shè)計(jì)和程序?qū)崿F(xiàn),主要測(cè)試依據(jù)是設(shè)計(jì)文檔
?黑盒測(cè)試:不關(guān)心軟件內(nèi)部,只關(guān)心輸入輸出,主要測(cè)試依據(jù)是需求文檔
2.2測(cè)試階段
?單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試。是“從小到大”、“由內(nèi)至外”、“循
序漸進(jìn)”的測(cè)試過(guò)程,體現(xiàn)了“分而治之”的思想。
?單元測(cè)試的粒度最小,一般由開(kāi)發(fā)小組采用白盒方式來(lái)測(cè)試,主要測(cè)試單元是否符合
“設(shè)計(jì)”。
?集成測(cè)試界于單元測(cè)試和系統(tǒng)測(cè)試之間,起到“橋梁作用”,一般由開(kāi)發(fā)小組采用白
盒加黑盒的方式來(lái)測(cè)試,既要驗(yàn)證“設(shè)計(jì)”又要驗(yàn)證“需求”。
?系統(tǒng)測(cè)試的粒度最大,一般由獨(dú)立測(cè)試小組采用黑盒方式來(lái)測(cè)試,主要測(cè)試系統(tǒng)是否
符合“需求規(guī)格說(shuō)明書(shū)”。
?驗(yàn)收測(cè)試與系統(tǒng)測(cè)試非常相似,主要區(qū)別是測(cè)試人員不同,驗(yàn)收測(cè)試由用戶(hù)執(zhí)行。
Page5
2.測(cè)試的分類(lèi)與比較
2.3開(kāi)發(fā)與測(cè)試的V型關(guān)系
?如果軟件開(kāi)發(fā)過(guò)程采用嚴(yán)格的瀑布模型,那么開(kāi)發(fā)與測(cè)試有“V”型的對(duì)應(yīng)關(guān)系0
Page6
2.測(cè)試的分類(lèi)與比較
2.4測(cè)試內(nèi)容
?接口與路徑測(cè)試。
?功能測(cè)試、健壯性測(cè)試、性能測(cè)試、用戶(hù)界面測(cè)試、安全性測(cè)試、壓力測(cè)試、可靠性
測(cè)試、安裝/反安裝測(cè)試…
測(cè)試階段主要依據(jù)測(cè)試人員、測(cè)試方式主要測(cè)試內(nèi)容
單元測(cè)試系統(tǒng)設(shè)計(jì)文檔由開(kāi)發(fā)小組執(zhí)行白盒測(cè)試接口測(cè)試、路徑測(cè)試
集成測(cè)試系統(tǒng)設(shè)計(jì)文檔由開(kāi)發(fā)小組執(zhí)行白盒測(cè)試和黑盒測(cè)試接口測(cè)試、路徑測(cè)試
需求文檔功能測(cè)試、性能測(cè)試
系統(tǒng)測(cè)試需求文檔由獨(dú)立測(cè)試小組執(zhí)行黑盒測(cè)試功能測(cè)試、健壯性測(cè)試、性能測(cè)試、用
戶(hù)界面測(cè)試、安全性測(cè)試、壓力測(cè)試、
驗(yàn)收測(cè)試需求文檔由用戶(hù)執(zhí)行黑盒測(cè)試
,可靠性測(cè)試、安裝/反安裝測(cè)試,
Page7
2.測(cè)試的分類(lèi)與比較
2.5問(wèn)題
?問(wèn)題1:有了“黑盒”測(cè)試為什么還要“白盒”測(cè)試?
-黑盒測(cè)試只能觀察軟件的外部表現(xiàn),即使軟件的輸入輸出都是正確的,卻并不能說(shuō)明軟件
就是正確的。因?yàn)槌绦蛴锌赡苡缅e(cuò)誤的運(yùn)算方式得出正確的結(jié)果,例如“負(fù)負(fù)得正,錯(cuò)錯(cuò)
得對(duì)”,只有白盒測(cè)試才能發(fā)現(xiàn)真正的原因。
-白盒測(cè)試能發(fā)現(xiàn)程序里的隱患,象內(nèi)存泄漏、誤差累計(jì)問(wèn)題。在這方面,黑盒測(cè)試存在嚴(yán)
重的不足。
?問(wèn)題2:由于單元測(cè)試要寫(xiě)測(cè)試驅(qū)動(dòng)程序,非常麻煩,能否等到整個(gè)系統(tǒng)全部開(kāi)發(fā)完
后,再集中精力進(jìn)行一次性地單元測(cè)試呢?
-如果這樣做,在開(kāi)發(fā)過(guò)程中,缺陷會(huì)越積越多并且分布得更廣、隱藏得更深,反而導(dǎo)致測(cè)
試與改錯(cuò)的代價(jià)大大增加。最糟糕的是無(wú)法估計(jì)測(cè)試與改錯(cuò)的工作量,使進(jìn)度失去控制。
因此為圖眼前省事而省略單元測(cè)試或者“偷工減料”,是“得不償失”的做法。
?問(wèn)題3:如果每個(gè)單元都通過(guò)了測(cè)試,把它們集成一起難道會(huì)有什么不妥嗎?集成測(cè)
試是否多此一舉?
-要把N個(gè)單元集成一起肯定靠接口耦合,這時(shí)可能會(huì)產(chǎn)生在單元測(cè)試中無(wú)法發(fā)現(xiàn)的問(wèn)題。例
如:數(shù)據(jù)通過(guò)不同的接口時(shí)可能出錯(cuò);幾個(gè)函數(shù)關(guān)聯(lián)在一起時(shí)可能達(dá)不到預(yù)期的功能;在
某個(gè)單元里可以接受的誤差可能在集成后被擴(kuò)大到無(wú)法接受的程度。所以集成測(cè)試是必要
的,不是多此一舉。
Page8
2.測(cè)試的分類(lèi)與比較
2.5問(wèn)題
?問(wèn)題4:在集成測(cè)試的時(shí)候,已經(jīng)對(duì)一些子系統(tǒng)進(jìn)行了功能測(cè)試、性能測(cè)試等等,那
么在系統(tǒng)測(cè)試時(shí)能否跳過(guò)相同內(nèi)容的測(cè)試?
-不能!因?yàn)榧蓽y(cè)試是在仿真環(huán)境中開(kāi)展的,那不是真正的目標(biāo)系統(tǒng)。再者,單元測(cè)試和
集成測(cè)試通常由開(kāi)發(fā)小組執(zhí)行。根據(jù)測(cè)試心理學(xué)的分析,開(kāi)發(fā)人員測(cè)試自己的工作成果雖
然是必要的,但不能作為成果已經(jīng)通過(guò)測(cè)試的依據(jù)。
?問(wèn)題5:既然系統(tǒng)測(cè)試與驗(yàn)收測(cè)試的內(nèi)容兒乎是相同的,為什么還要驗(yàn)收測(cè)試?
-首先是“信任”問(wèn)題。對(duì)于合同項(xiàng)目而言,如果測(cè)試小組是開(kāi)發(fā)方的人員,客戶(hù)怎么能夠
輕易相信“別人”呢?所以當(dāng)項(xiàng)目進(jìn)行系統(tǒng)測(cè)試之后,客戶(hù)再進(jìn)行驗(yàn)收測(cè)試是情理之中的
事。否則,那是客戶(hù)失職。
-不論是合同項(xiàng)目還是非合同項(xiàng)目,軟件的最終用戶(hù)各色各樣(如受教育程度不同、使用習(xí)
慣不同等等)。測(cè)試小組至多能夠模仿小部分用戶(hù)的行為,但并不具有普遍的代表性。
?問(wèn)題6:能否將系統(tǒng)測(cè)試和驗(yàn)收測(cè)試“合二為一”?
-系統(tǒng)測(cè)試不是一會(huì)兒就能做完的,比較長(zhǎng)時(shí)間的用戶(hù)測(cè)試很難組織。用戶(hù)還有自己的事情
要做,他們?yōu)槭裁匆獮閯e人測(cè)試呢?即使用戶(hù)愿意做系統(tǒng)測(cè)試,他們消耗的時(shí)間、花費(fèi)的
金錢(qián)大多比測(cè)試小組的高。
-系統(tǒng)測(cè)試時(shí)會(huì)找出相當(dāng)多的軟件缺陷,軟件需要反反復(fù)復(fù)地改錯(cuò)。如果讓用戶(hù)發(fā)現(xiàn)“內(nèi)幕
”,一是丟臉,二是會(huì)嚇跑買(mǎi)主。所以還是關(guān)起門(mén)來(lái),先讓測(cè)試小組做完系統(tǒng)測(cè)試的好。
Page9
3.測(cè)試人員的組織
3.1了解開(kāi)發(fā)人員的測(cè)試心理
?測(cè)試的目的是找出盡可能多的缺陷。所以測(cè)試是“破壞性”的,而開(kāi)發(fā)卻是“建設(shè)性”的。開(kāi)發(fā)
人員總是喜歡欣賞程序的成功之處,而不愿看到失敗之處。讓開(kāi)發(fā)者去做“蓄意破壞”的測(cè)試,
就象殺自己的孩子一樣難以接受。
?開(kāi)發(fā)者對(duì)自己的程序印象深刻,并總以為是正確的(自信是應(yīng)該的)。倘若在設(shè)計(jì)時(shí)就存在理解
錯(cuò)誤,或因不良的編程習(xí)慣而流下了隱患,他本人很難發(fā)現(xiàn)這類(lèi)錯(cuò)誤.
?開(kāi)發(fā)者對(duì)自己的程序的功能、接口十分熟悉,他自己幾乎不可能因?yàn)槭褂貌划?dāng)而引發(fā)錯(cuò)誤,這與
大眾用戶(hù)的情況不太相似,所以測(cè)試自己的程序不具備典型性。
?結(jié)論:開(kāi)發(fā)人員應(yīng)當(dāng)測(cè)試自己的程序,這是他分內(nèi)的工作。但是開(kāi)發(fā)人員在測(cè)試自己的程序時(shí),
很難做到客觀、公正,所以自我測(cè)試不具有說(shuō)服力。
3.2如何組織測(cè)試人員:應(yīng)當(dāng)視企業(yè)的人力資源而定
?條件特別好的公司,可以為每一個(gè)開(kāi)發(fā)人員分配一名獨(dú)立的測(cè)試人員。這樣的測(cè)試人員職業(yè)化程
度很高,可以完成單元測(cè)試、集成測(cè)試和系統(tǒng)測(cè)試工作,能夠?qū)崿F(xiàn)開(kāi)發(fā)與測(cè)試同步進(jìn)行。
?條件比較好的公司,可以設(shè)置一個(gè)獨(dú)立的測(cè)試小組,該測(cè)試小組輪流參加各個(gè)項(xiàng)目的系統(tǒng)測(cè)試。
而單元測(cè)試、集成測(cè)試工作由項(xiàng)目的開(kāi)發(fā)小組承擔(dān)。
?條件一般的公司,養(yǎng)不起獨(dú)立的測(cè)試小組。單元測(cè)試、集成測(cè)試工作由項(xiàng)目開(kāi)發(fā)小組承擔(dān)。當(dāng)項(xiàng)
目進(jìn)展到系統(tǒng)測(cè)試階段,可以從項(xiàng)目外抽調(diào)一些人員,加上開(kāi)發(fā)人員,臨時(shí)組織系統(tǒng)測(cè)試小組。
?條件比較差的公司,也許只有一個(gè)項(xiàng)目和為數(shù)不多的一些開(kāi)發(fā)人員。那么就讓開(kāi)發(fā)人員一直兼任
測(cè)試人員的角色,相互測(cè)試對(duì)方的程序。如果人員實(shí)在太少了,只好讓開(kāi)發(fā)者測(cè)試自己的程序,
有測(cè)試總比沒(méi)有測(cè)試好吧!Page10
3.測(cè)試人員的組織
3.3避免開(kāi)發(fā)人員與測(cè)試人員產(chǎn)生矛盾
?開(kāi)發(fā)人員的注意事項(xiàng):
-不要敵視測(cè)試人員。要理解測(cè)試的目的就是發(fā)現(xiàn)缺陷,是測(cè)試人員的工作職責(zé)
0不要以為測(cè)試人員吃飽了沒(méi)事干,存心找茬。
-不要輕視測(cè)試人員,別說(shuō)人家技術(shù)水平差,不配搞開(kāi)發(fā)只好搞測(cè)試。
?測(cè)試人員的注意事項(xiàng):
-發(fā)現(xiàn)缺陷時(shí)不要嘲笑開(kāi)發(fā)人員,別說(shuō)他的程序真臭、到處是Bug。
-在開(kāi)發(fā)人員壓力太大時(shí)或心情不好時(shí)不要火上澆油,發(fā)現(xiàn)缺陷時(shí)別大聲嚷嚷。
用測(cè)試人員與開(kāi)發(fā)人員的關(guān)系非常好,可能會(huì)導(dǎo)致
?麒翻鼐占霜咕”,這對(duì)項(xiàng)目也是一種傷害。
Page11
4.企業(yè)的測(cè)試策略
4.1理念:
?企業(yè)的主要目的是獲取利潤(rùn),降低測(cè)試成本也是盈利的一種方式。
?用較低的代價(jià)實(shí)現(xiàn)有效的測(cè)試,不應(yīng)為了追求完美的測(cè)試而不失一切代價(jià)。
4.2如何合理地減少測(cè)試工作量
?減少冗余的測(cè)試
-白盒測(cè)試與黑盒測(cè)試的方式雖然不同,但往往有“異曲同工”之妙。在很多地方,白盒測(cè)
試與黑盒測(cè)試會(huì)產(chǎn)生一模一樣的效果(或者能推理出來(lái)),這樣的測(cè)試是冗余的。
-在集成測(cè)試、系統(tǒng)測(cè)試階段,可能要執(zhí)行多次“回歸測(cè)試”。每一次“回歸測(cè)試”都會(huì)存
在不少的冗余,應(yīng)當(dāng)設(shè)法剔除不必要的重復(fù)測(cè)試工作。
?減少無(wú)價(jià)值的測(cè)試
-無(wú)價(jià)值的測(cè)試通常是由于不懂得測(cè)試技術(shù)引起的。例如功能測(cè)試,在等價(jià)區(qū)間之中,本來(lái)
只要測(cè)試一個(gè)典型的輸入就行了,如果有人在此區(qū)間測(cè)試了100次,那么其中99次就是無(wú)價(jià)
值的。
?如何“偷工減料”
-有一些“短、平、快”的項(xiàng)目,經(jīng)費(fèi)本來(lái)就少,用戶(hù)對(duì)質(zhì)量要求也馬馬虎虎。為了能多掙
一點(diǎn)錢(qián),開(kāi)發(fā)方不得不采用“偷工減料/的方式來(lái)降低測(cè)試代價(jià)。偷工減料的途徑無(wú)非就
是減少測(cè)試的內(nèi)容和頻度。但不能砍得太狠,否則軟件拿不出手?;痉椒ㄊ钦页鲕浖?/p>
需要優(yōu)先測(cè)試的部分(見(jiàn)下表),其它次要部分可以忽略或?qū)?lái)再測(cè)試。
Page12
4.企業(yè)的測(cè)試策略
?“偷工減料”方法的測(cè)試優(yōu)先級(jí):
-哪些功能是軟件的特色?
-哪些功能是用戶(hù)最常用的?
-如果系統(tǒng)可以分塊賣(mài)的話,哪些功能塊在銷(xiāo)售時(shí)最昂貴?
-哪些功能出錯(cuò)將導(dǎo)致用戶(hù)不滿(mǎn)或索賠?
-哪些程序是最復(fù)雜、最容易出錯(cuò)的?
-哪些程序是相對(duì)獨(dú)立,應(yīng)當(dāng)提前測(cè)試的?
-哪些程序最容易擴(kuò)散錯(cuò)誤?
-哪些程序是全系統(tǒng)的性能瓶頸所在?
-哪些程序是開(kāi)發(fā)者最沒(méi)有信心的?
4.3測(cè)試何時(shí)結(jié)束
?基于測(cè)試用例的規(guī)則
?基于“測(cè)試期缺陷密度”的規(guī)則
?基于“運(yùn)行期缺陷密度”的規(guī)則
4.4測(cè)試獎(jiǎng)勵(lì)機(jī)制
?根據(jù)缺陷的危害程度,把獎(jiǎng)金分等級(jí)。每個(gè)新缺陷對(duì)應(yīng)一份獎(jiǎng)金,把獎(jiǎng)金發(fā)給第一個(gè)發(fā)現(xiàn)該缺陷
的人。獎(jiǎng)金額要適當(dāng),太低了人們不感興趣,太高了會(huì)讓項(xiàng)目破產(chǎn)的。
Page13
5.測(cè)試規(guī)范
5.1測(cè)試流程
?第一步:制定測(cè)試計(jì)劃。該計(jì)劃被批準(zhǔn)后轉(zhuǎn)向第二步。
?第二步:設(shè)計(jì)測(cè)試用例。該用例被批準(zhǔn)后轉(zhuǎn)向第三步。
?第三步:如果滿(mǎn)足“啟動(dòng)準(zhǔn)則”,那么執(zhí)行測(cè)試。
?第四步:撰寫(xiě)測(cè)試報(bào)告。
?第五步:消除軟件缺陷。如果滿(mǎn)足“完成準(zhǔn)則”,那么正常結(jié)束測(cè)試。
審批審批回歸測(cè)試
完
成
測(cè)
試
Page14
5.測(cè)試規(guī)范
5.2測(cè)試啟動(dòng)準(zhǔn)則
?同時(shí)滿(mǎn)足以下條件,允許開(kāi)始測(cè)試:
-(1)測(cè)試計(jì)劃已經(jīng)制定并且通過(guò)了審批;
-(2)測(cè)試用例已經(jīng)設(shè)計(jì)并且通過(guò)了審批;
-(3)被測(cè)試對(duì)象已經(jīng)開(kāi)發(fā)完畢并等待測(cè)試。
5.3測(cè)試完成準(zhǔn)則
?對(duì)于非嚴(yán)格系統(tǒng)可以采用“基于測(cè)試用例”的準(zhǔn)則。同時(shí)滿(mǎn)足以下條件允許結(jié)束測(cè)試
*
-(1)功能性測(cè)試用例通過(guò)率達(dá)到100%;
-(2)非功能性測(cè)試用例通過(guò)率達(dá)到90%時(shí)。
?對(duì)于嚴(yán)格系統(tǒng),應(yīng)當(dāng)補(bǔ)充“基于測(cè)試期缺陷密度”的規(guī)則:
-(3)相鄰n個(gè)CPU小時(shí)內(nèi)“測(cè)試期缺陷密度”全部低于某個(gè)值暇例如n大于10,
m小于等于1。
5.4測(cè)試文檔模板
?測(cè)試計(jì)劃參考模板
?測(cè)試用例參考模板
?測(cè)試報(bào)告參考模板
Page15
5.5測(cè)試計(jì)劃的參考模板
類(lèi)別遞交時(shí)間建議制定者建議審批者
《單元測(cè)試計(jì)劃》在系統(tǒng)設(shè)計(jì)階段就可以起草,城場(chǎng)底實(shí)開(kāi)發(fā)小蛆的技術(shù)負(fù)責(zé)人項(xiàng)目經(jīng)理
現(xiàn)階段之初遞交。
《集成測(cè)試計(jì)劃》在系統(tǒng)設(shè)計(jì)階段就可以起草,反爆或瑯實(shí)開(kāi)發(fā)小蛆的技術(shù)負(fù)責(zé)人項(xiàng)目經(jīng)理
現(xiàn)階段之初遞交.
《系統(tǒng)測(cè)試計(jì)劃》在需求開(kāi)發(fā)階段就可以起草,歌瞧開(kāi)獨(dú)立測(cè)試小組的負(fù)責(zé)人項(xiàng)目經(jīng)理
發(fā)工作完成之際遞交.
《驗(yàn)收測(cè)試計(jì)劃》在需求開(kāi)發(fā)階段就可以起苴,最遲可在系項(xiàng)目經(jīng)理客戶(hù)代表
統(tǒng)測(cè)試工作完成之際遞交.或上級(jí)領(lǐng)導(dǎo)
1.測(cè)試范圍與目的
2.測(cè)試方法
3測(cè)試環(huán)境與測(cè)試輔助工具的描述
4測(cè)試啟動(dòng)準(zhǔn)則與結(jié)束準(zhǔn)則
5,應(yīng)遞交的文檔
文檔名稱(chēng)預(yù)計(jì)遞交時(shí)間
《測(cè)試計(jì)劃》
《測(cè)試用例》
《測(cè)試報(bào)告》
6.測(cè)試人員的組織
7.任務(wù)表
測(cè)試任務(wù)開(kāi)始時(shí)間結(jié)束時(shí)間執(zhí)行人員
8.可能存在的問(wèn)題與對(duì)策
■附錄:本計(jì)劃的審批意見(jiàn)Page16
5.6測(cè)試用例
《測(cè)試用例》的類(lèi)別遞交時(shí)間建設(shè)設(shè)計(jì)者建議審批者
單元測(cè)試階段的《測(cè)試在系統(tǒng)設(shè)計(jì)階段就可以起草,最濕豆.開(kāi)發(fā)小蛆各成員項(xiàng)目經(jīng)理
用例》正實(shí)現(xiàn)階段之初遞交。
集成測(cè)試階段的《測(cè)試在系統(tǒng)設(shè)計(jì)階段就可以起草,盤(pán)額.開(kāi)發(fā)小蛆各成員項(xiàng)目經(jīng)理
用例》艱實(shí)現(xiàn)階段之初遞交.
系統(tǒng)測(cè)試階段的《測(cè)試在需求分析計(jì)階段就可以起草,最濕.獨(dú)立測(cè)試小組各成項(xiàng)目經(jīng)理
用例》a很開(kāi)發(fā)工作完成之際遞交.員
驗(yàn)收測(cè)試階段的《測(cè)試在需求分析計(jì)階段就可以起草,最添項(xiàng)目經(jīng)理客戶(hù)代表
用例》國(guó)皮系統(tǒng)測(cè)試工作完成之際遞交.或上級(jí)領(lǐng)導(dǎo)
Page17
5.7測(cè)試報(bào)告的參考模板
1.基本信息
測(cè)試計(jì)劃的來(lái)源提示:埴寫(xiě)《測(cè)試計(jì)劃書(shū)》名稱(chēng),版本,時(shí)間
測(cè)試用例的來(lái)源提示:埴寫(xiě)《測(cè)試用例》名稱(chēng),版本,時(shí)間
測(cè)試對(duì)象描述
測(cè)試環(huán)境描述
測(cè)試驅(qū)動(dòng)程序描述提示:可以把測(cè)試驅(qū)動(dòng)程序當(dāng)作附件
測(cè)試人員
測(cè)試時(shí)間
2實(shí)況記錄
測(cè)試用例測(cè)試情況錯(cuò)誤嚴(yán)重程度
3分析與建議
提示:對(duì)測(cè)試結(jié)果進(jìn)行分析,提出建議.
4錯(cuò)誤修改記錄
錯(cuò)誤名稱(chēng)原因修改人修改時(shí)間是否回婦測(cè)試
?附件
Page18
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.1接口與路徑測(cè)試
6.2功能測(cè)試
6.3健壯性測(cè)試
6.4性能測(cè)試
6.5用戶(hù)界面測(cè)試
6.6信息安全測(cè)試
6.7壓力測(cè)試
6.8可靠性測(cè)試
6.9安裝/反安裝測(cè)試
Page19
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.1接口與路徑測(cè)試
?數(shù)據(jù)一般通過(guò)接口輸入和輸出,所以接口測(cè)試是白盒測(cè)試的第一步。每個(gè)接口可能有多個(gè)輸入?yún)?/p>
數(shù),每個(gè)參數(shù)有“典型值”、“邊界值”、“異常值”之分,所以輸入的組合數(shù)可能并不少。根
據(jù)接口的定義,可以推斷某種輸入應(yīng)當(dāng)產(chǎn)生什么樣的輸出。輸出包括函數(shù)的返回值和輸出參數(shù)。
如果實(shí)際輸出與期望的輸出不一致,那么說(shuō)明程序有錯(cuò)誤。白盒方式的接口測(cè)試和黑盒方式的功
能測(cè)試,其方法十分相似。
?一個(gè)函數(shù)體內(nèi)的語(yǔ)句可能只有十幾條,但邏輯路徑可能有成千上萬(wàn)條。想遍歷測(cè)試幾乎是不可能
的,不測(cè)試或者胡亂找?guī)讞l路徑測(cè)試卻又不行。
?對(duì)于非嚴(yán)格系統(tǒng)而言,在分析路徑方面化費(fèi)很多精力是不值得的。我認(rèn)為在構(gòu)造接口測(cè)試的同時(shí)
已經(jīng)建立了測(cè)試路徑。因?yàn)槊恳环N輸入將產(chǎn)生唯一的輸出,輸入與輸出之間的路徑也是唯一的。
由于接口測(cè)試中的輸入是有代表性的,因此相應(yīng)的路徑也具有代表性,不用得著費(fèi)煞苦心地去找
測(cè)試路徑。
?路徑測(cè)試的檢查表
-數(shù)據(jù)類(lèi)型、變量值、邏輯判斷、循環(huán)、內(nèi)存管理、文件I/O、錯(cuò)誤處理
?由于接口測(cè)試是枚舉的,有可能漏掉某些狀況,導(dǎo)致一些重要的路徑?jīng)]有被測(cè)試。預(yù)防措施有:
-觀察是否有程序語(yǔ)句從來(lái)沒(méi)有被執(zhí)行過(guò)。如果發(fā)生在這種情況,要么是程序有錯(cuò)誤,存在
無(wú)用的代碼;要么是接口測(cè)試不充分,漏掉了一些路徑。
-要特別留意函數(shù)體內(nèi)的錯(cuò)誤處理程序塊(如果存在的話),這是最易被人疏忽的路徑,隱
患最多。
Page20
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
?接口與路徑測(cè)試用例的參考模板
1.被測(cè)試對(duì)象(單元)的介紹
2.測(cè)試范圍與目的
3.測(cè)試環(huán)境與測(cè)試輔助工具的描述
4.測(cè)試驅(qū)動(dòng)程序的設(shè)計(jì)
5.接口測(cè)試用例列表
接口A的函數(shù)原型
輸入勘作期望的輸出體目應(yīng)實(shí)際情況
典型值.
邊界值
異常值…
接口B的函數(shù)原型
輸入勵(lì)作期望的輸出井目應(yīng)實(shí)際情況
???
6.路徑測(cè)試的檢查表
?*?
Page21
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.2功能測(cè)試
?功能測(cè)試的基本方法是構(gòu)造一些合理輸入(在需求范圍之內(nèi)),檢查輸出是否與期望的相同。如
果兩者不一致,即表明功能有誤。也有例外的情況,如《需求規(guī)格說(shuō)明書(shū)》中的某個(gè)功能寫(xiě)錯(cuò)了
,而實(shí)際上軟件的功能卻是正確的,這時(shí)要更改的是《需求規(guī)格說(shuō)明書(shū)》。
?功能測(cè)試看起來(lái)比較簡(jiǎn)單,只要看得懂《需求規(guī)格說(shuō)明書(shū)》,誰(shuí)都會(huì)做。難點(diǎn)在于如何構(gòu)造有效
的輸入。由于輸入空間通常是無(wú)限的,窮舉測(cè)試顯然行不通。那么隨便輸入一些東西,碰運(yùn)氣行
不行?
?功能測(cè)試有兩種比較好的測(cè)試方法:等價(jià)劃分法和邊界值分析法。
-等價(jià)劃分是指把輸入空間劃分為幾個(gè)“等價(jià)區(qū)間”,在每個(gè)“等價(jià)區(qū)間”中只需要測(cè)試一
個(gè)典型值就可以了。等價(jià)劃分法來(lái)源于人們的直覺(jué)與經(jīng)驗(yàn),可令測(cè)試事半功倍。
-“缺陷遺漏在角落里,聚集在邊界上”。邊界值測(cè)試法是對(duì)等價(jià)劃分法的補(bǔ)充。如果A和B
是輸入空間的邊界值,那么除了典型值外還要用A和B作為測(cè)試用例。
-例如測(cè)試函數(shù)。憑直覺(jué),等價(jià)區(qū)間應(yīng)是(0,1)和(1,+8)??扇〉湫椭祒=0.5以及
x=2.0進(jìn)行“等價(jià)劃分”測(cè)試。再取x=0以及x=l進(jìn)行“邊界值”測(cè)試。
Page22
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
?功能測(cè)試用例的參考模板
1被測(cè)試對(duì)象的介紹
2測(cè)試范圍與目的
3.測(cè)試環(huán)境與測(cè)試輔助工具的描述
4測(cè)試驅(qū)動(dòng)程序的設(shè)計(jì)
5,功能測(cè)試用例列表
功能A描述
用醵出
前提條件
輸入/動(dòng)作期望的輸出/相應(yīng)實(shí)際情況
示例:典型值…
示例:邊界值…
示例:異常值…
功能B描述
Page23
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.3健壯性測(cè)試
?健壯性是指在異常情況下,軟件還能正常運(yùn)行的能力。健壯性有兩層含義:一是容錯(cuò)能力,二是
恢復(fù)能力。
?容錯(cuò)性測(cè)試通常構(gòu)造一些不合理的輸入來(lái)引誘軟件出錯(cuò),例如:
-(1)輸入錯(cuò)誤的數(shù)據(jù)類(lèi)型。如“猴”年“馬”月。
-(2)輸入定義域之外的數(shù)值。如上海人常說(shuō)的“十三點(diǎn)”
?粗暴一些方式俗稱(chēng)“大猩猩”測(cè)試法。除了不能拳打腳踢嘴咬外,什么招術(shù)都可以使出來(lái)。例如
在測(cè)試客戶(hù)機(jī)一服務(wù)器模式的軟件時(shí),把網(wǎng)絡(luò)線拔掉,造成通信異常中斷。
?恢復(fù)測(cè)試重點(diǎn)考察一下幾項(xiàng):
-(1)系統(tǒng)能否重新運(yùn)行;
-(2)有無(wú)重要的數(shù)據(jù)丟失;
(3)是否毀壞了其它相關(guān)的軟件硬件。
Page24
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
?健壯性測(cè)試用例的參考模板
1.被測(cè)試對(duì)象的介紹
2測(cè)試范圍與目的
3.測(cè)試環(huán)境與測(cè)試輔助工具的描述
4測(cè)試驅(qū)動(dòng)程序的設(shè)計(jì)
5.溶錯(cuò)能力/恢復(fù)能力測(cè)試用例列表
異常輸入/動(dòng)作容錯(cuò)能力/恢復(fù)能力造成的危寺、損失
示例:錯(cuò)誤的數(shù)據(jù)類(lèi)型…
示例:定義域外的值…
示例:錯(cuò)誤的操作順序…
示例:異常中斷通信…
示例:異常關(guān)閉某個(gè)功能...
示例:負(fù)荷超出了極限…
Page25
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.4性能測(cè)試
?性能測(cè)試即測(cè)試軟件處理事務(wù)的速度,一是為了檢驗(yàn)性能是否符合需求,二是為了得到某些性能
數(shù)據(jù)供人們參考(例如用于宣傳)。
?有時(shí)人們關(guān)心測(cè)試的“絕對(duì)值”,如數(shù)據(jù)送輸速率是每秒多少比特。有時(shí)人們關(guān)心測(cè)試的“相對(duì)
值”,如某個(gè)軟件比另一個(gè)軟件快多少倍。
?在獲取測(cè)試的“絕對(duì)值”時(shí),我們要充分考慮并記錄運(yùn)行環(huán)境對(duì)測(cè)試的影響。例如網(wǎng)絡(luò)環(huán)境、計(jì)
算機(jī)主頻,總線結(jié)構(gòu)和外部設(shè)備都可能影響軟件的運(yùn)行速度。
?性能測(cè)試的一些注意事項(xiàng):
-不要試圖讓人拿著鐘表去測(cè)時(shí)間,應(yīng)當(dāng)編寫(xiě)一段程序用于計(jì)算時(shí)間以及相關(guān)數(shù)據(jù)。
-應(yīng)當(dāng)測(cè)試軟件在標(biāo)準(zhǔn)配置和最低配置下的性能。
-為了排除干擾,應(yīng)當(dāng)關(guān)閉那些消耗內(nèi)存、占用CPU的其它應(yīng)用軟件(如殺毒軟件)。
-不同的輸入情況會(huì)得到不同的性能數(shù)據(jù),應(yīng)當(dāng)分檔記錄。例如傳輸文件的容量從100K到1M
可以分成若干等級(jí)。
-由于環(huán)境的波動(dòng),同一種輸入情況在不同的時(shí)間可能得到不同的性能數(shù)據(jù),可以取其平均
值。
Page26
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
?性能測(cè)試用例的參考模板
1.被測(cè)試對(duì)象的介紹
2.測(cè)試范圍與目的
3.測(cè)試環(huán)境與測(cè)試輔助工具的描述
4.測(cè)試驅(qū)動(dòng)程序的設(shè)計(jì)
5,性能測(cè)試用例列表
性能A描述
用覦且的
前提條件
輸入數(shù)據(jù)期望的性能(平均值)實(shí)際性能(平均值)
性能B描述
Page27
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.5用戶(hù)界面測(cè)試
?絕大多數(shù)軟件擁有圖形用戶(hù)界面。圖形用戶(hù)界面的測(cè)試重點(diǎn)是正確性、易用性和視覺(jué)效果。在評(píng)
價(jià)易用性和視覺(jué)效果時(shí).,主觀性非常強(qiáng),應(yīng)當(dāng)考慮多個(gè)人的觀點(diǎn)。
?用戶(hù)界面測(cè)試用例的參考模板:
1.被測(cè)試對(duì)象的介紹
2.測(cè)試范圍與目的
3.測(cè)試環(huán)境與測(cè)試轆助工具的描述
4.測(cè)試驅(qū)動(dòng)程序的設(shè)計(jì)
5.測(cè)試人員的分類(lèi)
類(lèi)別特征
A類(lèi)
BS
6.用于測(cè)試用戶(hù)界面的檢查表
檢查項(xiàng)測(cè)試人員的類(lèi)別及其評(píng)價(jià)
重點(diǎn)檢查正確性、易用性和美觀程度,參見(jiàn)'
表7-16
Page28
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.6信息安全測(cè)試
?信息安全性(security)是指防止系統(tǒng)被非法入侵的能力,既屬于技術(shù)問(wèn)題又屬于管理問(wèn)題。
?信息安全性測(cè)試有如下步驟:
-(1)為非法入侵設(shè)立目標(biāo),例如“盜竊某個(gè)文件”或“更改數(shù)據(jù)庫(kù)記錄”等。
-(2)邀請(qǐng)(或懸賞)一些人扮演黑客,讓他們想盡辦法入侵系統(tǒng),實(shí)現(xiàn)“目標(biāo)”。
-(3)如果有人成功了,請(qǐng)他詳述入侵的過(guò)程。別忘了給予獎(jiǎng)勵(lì)。
?信息安全性測(cè)試用例的參考模板
1.被測(cè)試對(duì)象的介紹
2測(cè)試范圍與目的
3.測(cè)試環(huán)境與測(cè)試輔助工具的描述
4.測(cè)試驅(qū)動(dòng)程序的設(shè)計(jì)
5.信息安全性測(cè)試用例
暇想目標(biāo)A
前提條件
非法入侵手段是否實(shí)現(xiàn)目標(biāo)代價(jià)-利益分析
Page29
6.軟件系統(tǒng)的主要測(cè)試內(nèi)容及技術(shù)
6.7壓力測(cè)試
?壓力測(cè)試也叫負(fù)荷測(cè)試,即獲取系統(tǒng)能正常運(yùn)行的極限狀態(tài)。了解“極限”是很有價(jià)值的,例如
潛艇下潛極限深度…。
?壓力測(cè)試的主要任務(wù)是:構(gòu)造正確的輸入,使勁折騰系統(tǒng)卻讓它剛好不癱瘓。
?壓力測(cè)試的一個(gè)變種是敏感測(cè)試。在某種情況下,微小的輸入變動(dòng)會(huì)導(dǎo)致系統(tǒng)的表現(xiàn)(如性能)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 六年級(jí)家長(zhǎng)會(huì)校長(zhǎng)發(fā)言稿
- 幼兒家長(zhǎng)代表發(fā)言稿
- 活動(dòng)致辭發(fā)言稿
- 副班長(zhǎng)發(fā)言稿
- 大學(xué)校長(zhǎng)發(fā)言稿
- 員工大會(huì)發(fā)言稿簡(jiǎn)短
- 色彩理論教學(xué)
- 期中考試學(xué)生發(fā)言稿
- 就業(yè)創(chuàng)業(yè)發(fā)言稿
- 預(yù)防嬰兒肺炎護(hù)理常規(guī)課件
- 部編版小學(xué)(2024版)小學(xué)道德與法治一年級(jí)下冊(cè)《有個(gè)新目標(biāo)》-第一課時(shí)教學(xué)課件
- 2024年湖南汽車(chē)工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)標(biāo)準(zhǔn)卷
- 20S515 鋼筋混凝土及磚砌排水檢查井
- (正式版)HGT 6313-2024 化工園區(qū)智慧化評(píng)價(jià)導(dǎo)則
- 美國(guó)小企業(yè)投資公司計(jì)劃(SBIC)
- 商務(wù)演示模版
- 美國(guó)簽證在職證明中英文模板.doc
- 患者約束技術(shù)評(píng)分標(biāo)準(zhǔn)
- 網(wǎng)架施工安全專(zhuān)項(xiàng)方案
- 屋頂分布式光伏發(fā)電項(xiàng)目設(shè)計(jì)方案(完整版)
- (完整word版)電力電子課程設(shè)計(jì)--Boost電路的建模與仿真-精品.doc
評(píng)論
0/150
提交評(píng)論