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