【正文】
C4:a=b嗎? Y Y Y Y N N N N C5:a=c嗎? Y Y N N Y Y N N C6:b=c嗎? Y N Y N Y N Y N 規(guī)則條數(shù)統(tǒng)計 A1:非三角形 A2:不等邊三角形 A3:等腰三角形 A4:等邊三角形 A5:不可能 規(guī)則條數(shù)統(tǒng)計 32 16 8 1 1 1 1 1 1 1 1 四 決策表 13 決策表的各種表示方法 四 決策表 有限條目決策表 ——所有條件都是二叉條件 ?條件的順序沒有要求 若有 n個條件,必須有 ( 2n)條規(guī)則,每條規(guī)則對應(yīng)一個測試用例。若存在不關(guān)心項 ,則規(guī)則中每出現(xiàn)一個不關(guān)心項,規(guī)則數(shù)乘 1次 2。 在決策表中應(yīng)小心使用不關(guān)心條目“-” 四 決策表 ?決策表是不確定的。 19 決策表的生成 若問題要求:“ … 對功率大于 50馬力的機(jī)器、 維修記錄不全 或已運(yùn)行 10年以上的機(jī)器,應(yīng)給予優(yōu)先的 維修處理 … ” 條件: 1. 功率大于 50馬力 2. 維修記錄不全 3. 運(yùn)行 10年以上 四 決策表 采取的措施: 1. 進(jìn)行優(yōu)先的維修處理 2. 做其它處理 1 2 3 4 5 6 7 8 問 題 功率大于 50馬力嗎? Y Y Y Y N N N N 維修記錄不全嗎? Y Y N N Y Y N N 運(yùn)行 10年以上嗎? Y N Y N Y N Y N 建 議 進(jìn)行優(yōu)先的維修處理 做其它處理 20 決策表的生成 檢查發(fā)貨單 If( 發(fā)貨單金額超過 $500 ) If ( 欠款超過 60天 ) 在償還欠款前不予批準(zhǔn) Else 發(fā)批準(zhǔn)書及發(fā)貨單 Endif Else If( 欠款超過 60天 ) 發(fā)批準(zhǔn)書、發(fā)貨單及賒欠報告 Else 發(fā)批準(zhǔn)書及發(fā)貨單 Endif Endif 1 2 3 4 條件 發(fā)貨單金額 500 500 =500 =500 賒欠情況 60 =60 60 =60 操作 不發(fā)批準(zhǔn)書 發(fā)出批準(zhǔn)書 發(fā)出發(fā)貨單 發(fā)出賒欠報告 四 決策表 檢查 發(fā)貨單 金額 500 金額 =500 欠款 =60 欠款 60 欠款 =60 欠款 60 發(fā)批準(zhǔn)書、發(fā)貨單 不發(fā)批準(zhǔn)書 發(fā)批準(zhǔn)書、發(fā)貨單 發(fā)批準(zhǔn)書、發(fā)貨單和賒欠報告 21 4 決策表 原因 基本組成 決策表的化簡 決策表的生成 測試用例的設(shè)計 討論 22 測試用例的設(shè)計 用決策表表示測試用例,則輸入即為條件,輸出即為行動,有時,條件最終引用輸入的等價類,行動則引用軟件的主要功能處理部分 決策表可機(jī)械地強(qiáng)制為完備的,故可得到測試用例的完整集合 四 決策表 23 測試用例的設(shè)計 三角形問題 四 決策表 輸出的等價類 R1={a,b,c|有三條邊 a,b,c的等邊三角形 } R2={a,b,c|有三條邊 a,b,c的等腰三角形 } R3={a,b,c|有三條邊 a,b,c的不等邊三角形 } R4={a,b,c|三條邊 a,b,c不構(gòu)成三角形 } 能構(gòu)成三角形? 三角形類型? 24 測試用例的設(shè)計 三角形問題的決策表 四 決策表 C1:a,b,c構(gòu)成三角形? N Y Y Y Y Y Y Y Y C2:a=b嗎? Y Y Y Y N N N N C3:a=c嗎? Y Y N N Y Y N N C4:b=c嗎? Y N Y N Y N Y N A1:非三角形 A2:不等邊三角形 A3:等腰三角形 A4:等邊三角形 A5:不可能 通過增加行動,顯示何時規(guī)則在邏輯上 不可能滿足 通過條件選擇,擴(kuò)展決策表的規(guī)模 輸入條件的等價類 D1={a,b,c|a=b+c} D2={a,b,c|b=a+c} D3={a,b,c|c=a+b} 25 測試用例的設(shè)計 改進(jìn)的三角形問題的決策表 四 決策表 C1:ab+c? N Y Y Y Y Y Y Y Y Y Y C2:ba+c? N Y Y Y Y Y Y Y Y Y C3:ca+b? N Y Y Y