【正文】
部測(cè)試用例。 a. 例題 [2020 年統(tǒng)考 ]設(shè)要對(duì)一個(gè)自動(dòng)飲料售貨機(jī)軟件進(jìn)行黑盒測(cè)試。 應(yīng)該認(rèn)識(shí)到,軟件測(cè)試不僅僅 指利用計(jì)算機(jī)進(jìn)行的測(cè)試,還包括人工進(jìn)行的測(cè)試(例如,代碼審查)。 2) 一個(gè)好的測(cè)試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤 3) 一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試 軟件測(cè)試的原則 1) 應(yīng)當(dāng)盡早地不斷地進(jìn)行軟件測(cè)試 2) 測(cè)試用例應(yīng)由測(cè)試輸入數(shù)據(jù)和與之相對(duì)應(yīng)的預(yù)期輸出結(jié)果這兩部分組成 3) 程序員應(yīng)避免檢查自己的程序 4) 在設(shè)計(jì)測(cè)試用例時(shí),應(yīng)當(dāng)包 括合理的輸入條件和不合理的輸入條件 5) 充分注意測(cè)試中的群集現(xiàn)象 6) 嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性 7) 應(yīng)當(dāng)對(duì)每個(gè)測(cè)試結(jié)果做全面檢查 8) 妥善保存測(cè)試計(jì)劃、測(cè)試用例、出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告,為維護(hù)提供方便 常分單元測(cè)試 /模塊測(cè)試,集成測(cè)試,確認(rèn)測(cè)試和系統(tǒng)測(cè)試。一般來(lái)說(shuō),模塊的大小都在 10 行以下 答案:②、③、④、⑦、⑧是正確的 測(cè)試 軟件測(cè)試的 目的就是軟件投入生產(chǎn)性運(yùn)行之前,盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。 程序設(shè)計(jì)語(yǔ)言的分類、選擇 大量實(shí)踐表明,高級(jí)程序設(shè)計(jì)語(yǔ)言較匯編語(yǔ)言有很多優(yōu)點(diǎn)。 140 試?yán)没?本控制結(jié)構(gòu),將程序中的 GOTO 語(yǔ)句消去。 goto 140。 if (BC) goto 110。 S T A R T P A B Q T F E N D S T A R T P A B Q T F E N D T F F T 答案: W h i l e P A B U n t i l Q 設(shè)置 Q 的值為“真” Q F T ↓ A B U n t i l ( n o t P ) PAD 圖略 McCabe 復(fù)雜性度量都為 3。( B)表示法中,每個(gè)處理過(guò)程用一個(gè)盒子表示,盒子可以嵌套。 詳細(xì)設(shè)計(jì)說(shuō)明書(shū) 1. 引言 2. 總體設(shè)計(jì)。 2) McCabe 度量法 McCabe 度量法是一種基于程序控制流的復(fù)雜性度量方法。 1) 代碼行度量法 度量程序的復(fù)雜性,最簡(jiǎn)單的方法就是統(tǒng)計(jì)程序的源代碼行數(shù)。 結(jié)構(gòu)化程序設(shè)計(jì)的三種基本控制結(jié)構(gòu)是順序、選擇、循環(huán)。 1 詳細(xì)設(shè)計(jì) 詳細(xì)設(shè)計(jì)就是要在總體設(shè)計(jì)階段成果的基礎(chǔ)上,考慮如何實(shí)現(xiàn)定義的軟件系統(tǒng),直到對(duì)系統(tǒng)中的每個(gè)模塊給出足夠詳細(xì)的過(guò)程描述。 詳細(xì)設(shè)計(jì)的工具有程序流程圖、盒圖、 PAD 圖、判定表、判定樹(shù)和 PDL 語(yǔ)言等。該方法的基本考慮是統(tǒng)計(jì)一個(gè)程序模塊的源代碼行數(shù)目,并以源代碼行數(shù)作為程序復(fù)雜性的度量。 McCabe 定義的程序復(fù)雜性度量值又稱環(huán)路復(fù)雜性,它是基于程序圖中環(huán)路的個(gè)數(shù)。軟件結(jié)構(gòu) 3. 程序描述。( C)可以縱橫延伸,圖形的 空間效果好。( 76+2) 下圖是使用 BASIC 語(yǔ)言編寫(xiě)的一個(gè)打印 A、 B、 C 三數(shù)中最小者的程序流程圖。 100 print C。 120 if (AC) goto 130。 使用 ifthenelse 結(jié)構(gòu)化構(gòu)造,則上述程序段可改成如下形式: if (AB and AC) then print A else if (A=B and Bc) then print B else print C 編碼 所謂編碼就是把軟件設(shè)計(jì)的結(jié)果翻譯成計(jì)算機(jī)可以“理解”的形式 — 用某種程序設(shè)計(jì)語(yǔ)言書(shū)寫(xiě)的程序。 程序設(shè)計(jì)風(fēng)格包括四個(gè)方面: 源程序文檔化、數(shù)據(jù)說(shuō)明、語(yǔ)句結(jié)構(gòu)和輸入 /輸出方法 例題 從下列敘述中選出 5 條符合程序設(shè)計(jì)風(fēng)格指導(dǎo)原則的敘述。目前軟件測(cè)試仍然是保證軟件質(zhì)量的關(guān)鍵步驟。關(guān)系重大的還可做平行運(yùn)行。兩種測(cè)試途徑各有優(yōu)缺點(diǎn),互相補(bǔ)充,缺一不可。該軟件的規(guī)格說(shuō)明如下: 有一個(gè)處理單價(jià)為 1 元 5 角錢的盒裝飲料的自動(dòng)售貨機(jī)軟件。 輸入條件 ( 原因 ) 輸出條件 ( 結(jié)果 ) 投入 1 元 5 角硬幣 投入 2 元硬幣 按 ” 橙汁 ” 按鈕 按 ” 啤酒 ” 按鈕 按 ” 紅茶 ” 按鈕 退還 5 角硬幣 送出 ” 橙汁 ” 飲料 送出 ” 啤酒 ” 飲料 送出 ” 紅茶 ” 飲料 ( 1 ) ( 2 ) E ( 2 1 ) ( 1 1 ) ( 2 2 ) ( 2 3 ) ( 2 4 ) ( 3 ) ( 4 ) ( 5 ) ( 1 2 ) E 因果圖(加入了兩個(gè)中間結(jié)點(diǎn) 11 和 12。根據(jù)國(guó)家標(biāo)準(zhǔn) GB856688《計(jì)算機(jī)軟件開(kāi)發(fā)規(guī)范》的規(guī)定,軟件的開(kāi)發(fā)和維護(hù)劃分為 8 個(gè)階段,其中,單元測(cè)試是在( C)階段完成的,集成測(cè)試的計(jì)劃是在( D)階段制定的,確認(rèn)測(cè)試的計(jì)劃是在( E)階段制定的。需要考慮的問(wèn)題是在把各個(gè)模塊連接起來(lái)的時(shí)候,穿越模塊接口的數(shù)據(jù)是否會(huì)( F);一個(gè)模塊的功能是否會(huì)對(duì)另一個(gè)模塊的功能產(chǎn)生不利的影響;各個(gè)( G)組合起來(lái),能否達(dá)到預(yù)期要求的( H);( I)是否有問(wèn)題;單個(gè)模塊的誤差累積起來(lái)是否會(huì)放大。 白盒測(cè)試法是根據(jù)程序的( C)來(lái)設(shè)計(jì)測(cè)試用例的方法。( G)覆蓋既是判定覆蓋,又是條件覆蓋,但它并不保證使各種條件都能 取到所有可能的值。 ②盡量用公共過(guò)程或子程序去代替重復(fù)的代碼段。 ⑥ GOTO 語(yǔ)句概念簡(jiǎn)單,使用方便。 ⑨在做程序的單元測(cè)試時(shí),樁(存根)模塊比驅(qū)動(dòng)模塊容易編寫(xiě)。 測(cè)試中的可靠性分析 在軟件開(kāi)發(fā)的過(guò)程中,利用測(cè)試的統(tǒng)計(jì)數(shù)據(jù),估算 軟件的可靠性以控制軟件的質(zhì)量是至關(guān)重要的。統(tǒng)計(jì)數(shù)字表明,通常 ET/IT值的變化范圍在 *102— 2*102之間。 1) 估計(jì)程序中固有的錯(cuò)誤總數(shù)。代入 ? ?te ??? 得 t=(ln(35))/=356h 因此求得為使 MTTF=10,測(cè)試和調(diào)試該程序需要時(shí)間約為 356 小時(shí)。軟件可維護(hù)性,是指糾正軟件系統(tǒng)出現(xiàn)的錯(cuò)誤和缺陷,以及為滿足新的要求進(jìn)行修改、擴(kuò)充或壓縮的容易程度。 軟件維護(hù)工作流程 確認(rèn)維護(hù)要求 由維護(hù)組織管理員確認(rèn)維護(hù)類型 用戶請(qǐng)求維護(hù) 確定維護(hù)類型 改正性維護(hù) 適應(yīng)性 完善性 預(yù)防性維護(hù) 嚴(yán)重錯(cuò)誤 非嚴(yán)重錯(cuò)誤