思路解析:整個(gè)模塊的任意一條執(zhí)行路徑都分兩步完成:第1步是從開(kāi)始執(zhí)行到A點(diǎn);第2步是從A點(diǎn)執(zhí)行到結(jié)束.而第1步可由子模塊1或子模塊2或子模塊3來(lái)完成;第2步可由子模塊4或子模塊5來(lái)完成.因此,分析一條指令在整個(gè)模塊的執(zhí)行路徑需要用到兩個(gè)計(jì)數(shù)原理.
解:由分類(lèi)加法計(jì)數(shù)原理,子模塊1或子模塊2或子模塊3中的子路徑共有
18+45+28=91(條);
子模塊4或子模塊5中的子路徑共有38+43=81(條).
又由分步乘法計(jì)數(shù)原理,整個(gè)模塊的執(zhí)行路徑共有91×81=7 371(條).
巧妙變式 為了減少測(cè)試的時(shí)間,程序員需要設(shè)法減少測(cè)試次數(shù).你能幫助程序員設(shè)計(jì)一個(gè)測(cè)試方法,以減少測(cè)試次數(shù)嗎?
解:在實(shí)際測(cè)試中,可把每一個(gè)子模塊看成一個(gè)黑箱,即通過(guò)只考察是否執(zhí)行了正確的子模塊的方式來(lái)測(cè)試整個(gè)模塊.這樣,可以先分別單獨(dú)測(cè)試5個(gè)模塊,以考察每個(gè)子模塊的工作是否正常.總共需要的測(cè)試次數(shù)為
18+45+28+38+43=172.
再測(cè)試各個(gè)模塊之間的信息交流是否正常,只需要測(cè)試程序第1步中的各個(gè)子模塊和第2步中的各個(gè)子模塊之間的信息交流是否正常,需要的測(cè)試次數(shù)為
3×2=6.
如果每個(gè)子模塊都工作正常,并且各個(gè)子模塊之間的信息交流也正常,那么整個(gè)程序模塊就工作正常.這樣,測(cè)試整個(gè)模塊的次數(shù)就變?yōu)?72+6=178(次).
顯然,178與7 371的差距是非常大的.
年級(jí) | 高中課程 | 年級(jí) | 初中課程 |
高一 | 高一免費(fèi)課程推薦! | 初一 | 初一免費(fèi)課程推薦! |
高二 | 高二免費(fèi)課程推薦! | 初二 | 初二免費(fèi)課程推薦! |
高三 | 高三免費(fèi)課程推薦! | 初三 | 初三免費(fèi)課程推薦! |
百度致信 - 練習(xí)冊(cè)列表 - 試題列表
湖北省互聯(lián)網(wǎng)違法和不良信息舉報(bào)平臺(tái) | 網(wǎng)上有害信息舉報(bào)專(zhuān)區(qū) | 電信詐騙舉報(bào)專(zhuān)區(qū) | 涉歷史虛無(wú)主義有害信息舉報(bào)專(zhuān)區(qū) | 涉企侵權(quán)舉報(bào)專(zhuān)區(qū)
違法和不良信息舉報(bào)電話(huà):027-86699610 舉報(bào)郵箱:58377363@163.com