《道客巴巴軟件測試》由會員分享,可在線閱讀,更多相關(guān)《道客巴巴軟件測試(43頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、毛 新 軍 教 授計 算 機 科 學 與 技 術(shù) 系 602教 研 室 0731-(45)73649軟 件 工 程 導(dǎo) 論 之 Copyright Xinjun Mao 軟件測試 2 n 初 步 的 軟 件 系 統(tǒng) 存 在 錯 誤 , 如 何 : 發(fā) 現(xiàn) 錯 誤 ? 糾 正 錯 誤 ?n 軟 件 測 試 是 軟 件 質(zhì) 量 保 證 活 動 中 關(guān) 鍵 步 驟 對 SRS、 設(shè) 計 規(guī) 格 說 明 書 以 及 編 碼 的 最 后 復(fù) 審 其 工 作 量 往 往 占 軟 件 開 發(fā) 總 工 作 量 的 40%以 上 軟 件 測 試 是 確 保 軟 件 質(zhì) 量 的 一 種 有 效 (可 操 作 )手
2、 段n 軟 件 測 試 有 其 特 殊 性 和 規(guī) 律 因 為 軟 件 是 邏 輯 產(chǎn) 品 Copyright Xinjun Mao 軟件測試 3 1. 基 本 概 念2. 軟 件 測 試 技 術(shù)3. 軟 件 測 試 策 略4. 基 于 CASE的 軟 件 測 試 和 排 錯 Copyright Xinjun Mao 軟件測試 4 n 軟 件 錯 誤 軟 件 系 統(tǒng) 的 功 能 和 性 能 與 預(yù) 期 的 功 能 和 性 能 不一 致n 軟 件 測 試 是 發(fā) 現(xiàn) 軟 件 錯 誤 的 過 程 Copyright Xinjun Mao 軟件測試 5 n 目 標 發(fā) 現(xiàn) 軟 件 中 的 錯 誤 ,
3、 提 高 軟 件 質(zhì) 量 注 意軟 件 測 試 中 沒 有 發(fā) 現(xiàn) 錯 誤 并 不 意 味 著 軟 件 就 沒有 錯 誤 = 測 試 不 充 分 , 潛 在 錯 誤 不 能 發(fā) 現(xiàn) Copyright Xinjun Mao 軟件測試 6 n 軟 件 測 試 思 想 數(shù) 據(jù) 處 理 設(shè) 計 測 試 用 例 判 斷 結(jié) 果 Copyright Xinjun Mao 軟件測試 7 n 二 種 測 試 方 法 白 盒 測 試 黑 盒 測 試 Copyright Xinjun Mao 軟件測試 8 設(shè)計測試用例 n 思 想 已 知 程 序 內(nèi) 部 工 作 流 程 , 通 過 測 試 檢 驗 程 序 內(nèi)部
4、 動 作 是 否 按 規(guī) 格 說 明 書 規(guī) 定 正 常 運 作n 依 據(jù) 程 序 的 內(nèi) 部 邏 輯 結(jié) 構(gòu) , 針 對 程 序 的 邏 輯 路 徑 設(shè)計 測 試 用 例n 特 點 必 須 了 解 程 序 的 內(nèi) 部 工 作 流 程 Copyright Xinjun Mao 軟件測試 9 功能: 求二個數(shù)中較大者 測試用例 n 思 想 根 據(jù) 已 知 程 序 的 功 能 和性 能 (而 不 是 內(nèi) 部 細 節(jié) ),通 過 測 試 檢 驗 每 個 功 能和 性 能 是 否 正 常n 依 據(jù) 程 序 的 功 能 和 性 能 描 述n 特 點 知 道 程 序 的 功 能 和 性 能 ,不 必 了
5、解 程 序 的 內(nèi) 部 結(jié)構(gòu) 和 處 理 細 節(jié) Copyright Xinjun Mao 軟件測試 10 n 軟 件 開 發(fā) 從 高 抽 象 層 次 向 低 層 次 抽 象 過 渡n 軟 件 測 試 從 低 層 次 抽 象 向 高 層 次 抽 象 過 渡n 軟 件 測 試 的 層 次 單 元 測 試 : 測 試 程 序 中 每 個 模 塊 是 否 有 錯 誤 ( 白 盒 ) 集 成 測 試 : 測 試 軟 件 總 體 結(jié) 構(gòu) 是 否 有 錯 誤 ( 黑 盒 ) 確 認 測 試 : 測 試 軟 件 是 否 滿 足 用 戶 需 求 ( 黑 盒 ) Copyright Xinjun Mao 軟件測
6、試 11 需 求 分 析概 要 設(shè) 計詳 細 設(shè) 計 編 碼 單 元 測 試集 成 測 試確 認 測 試軟 件 開 發(fā) 過 程 軟 件 測 試 過 程 Copyright Xinjun Mao 軟件測試 12 1. 基 本 概 念2. 軟 件 測 試 技 術(shù)3. 軟 件 測 試 策 略4. 基 于 CASE的 軟 件 測 試 和 排 錯 Copyright Xinjun Mao 軟件測試 13 n 白 盒 測 試 白 盒 測 試 是 根 據(jù) 程 序 的 控 制 結(jié) 構(gòu) 來 設(shè) 計 測 試 用例 Copyright Xinjun Mao 軟件測試 14 1 2 3 6 7 8 4 5 11 9
7、10 n 要 設(shè) 計 多 少 測 試 用 例 ? 覆 蓋 準 則 語 句 覆 蓋 分 支 覆 蓋 路 徑 覆 蓋 : 程 序 通 道 基 本 路 徑 覆 蓋 Copyright Xinjun Mao 軟件測試 15 n 基 本 路 徑 至 少 引 入 一 個 新 語 句 或 者 新 判 斷 的 程 序 通 道 n 思 想 路 徑 = 基 本 路 徑 = 基 本 路 徑 測 試n 前 提 軟 件 模 塊 的 邏 輯 結(jié) 構(gòu) ( 流 程 圖 )n 如 何 設(shè) 計 測 試 用 例 確 保 基 本 路 徑 覆 蓋 = 哪 些 基 本 路 徑 = 流 圖 = 流 程 圖 Copyright Xinjun
8、 Mao 軟件測試 16 2,3 6 7 8 9 10 4,5 11 程序流圖 1 2 3 6 7 8 4 5 11 9 10 模塊流程圖 Copyright Xinjun Mao 軟件測試 17 void Func(int nPosX, int nPosY) while (nPosX 0) int nSum = nPosX + nPosY;if (nSum 1) nPosX-; nPosY-;else if (nSum 0) int nSum = nPosX + nPosY;if (nSum 1) nPosX-; nPosY-;else if (nSum 0) int nSum = nPos
9、X + nPosY;if (nSum 1) nPosX-; nPosY-;else if (nSum -1) nPosX -= 2; else nPosX -= 4; / end of while 2,3 6 7 8 9 10 4,5 11 程 序 流 圖 Copyright Xinjun Mao 軟件測試 25 n 黑 盒 測 試 技 術(shù) 測 試 軟 件 是 否 滿 足 功 能 和 性 能 要 求 , 它 不 涉 及模 塊 的 內(nèi) 部 過 程 性 細 節(jié)n 主 要 的 黑 盒 測 試 技 術(shù) 等 價 分 類 法 邊 界 分 類 法 Copyright Xinjun Mao 軟件測試 26 n
10、 思 想 把 程 序 的 輸 入 數(shù) 據(jù) 集 合 按 輸 入 條 件 劃 分 為 若 干個 等 價 類 , 每 一 個 等 價 類 對 于 輸 入 條 件 而 言 為一 組 有 效 或 者 無 效 的 輸 入 , 然 后 為 每 一 個 等 價類 設(shè) 計 一 個 測 試 用 例n 優(yōu) 點 減 少 測 試 次 數(shù) , 不 丟 失 發(fā) 現(xiàn) 錯 誤 的 機 會 Copyright Xinjun Mao 軟件測試 27 n 輸 入 條 件 為 一 范 圍 劃 分 出 三 個 等 價 類 : (1) 有 效 等 價 類 (在 范 圍 內(nèi) ), (2) 大于 輸 入 最 大 值 , (3)小 于 輸 入
11、最 少 值n 輸 入 條 件 為 一 值 劃 分 為 三 個 等 價 類 : (1) 有 效 , (2) 大 于 , (3) 小 于n 輸 入 條 件 為 集 合 劃 分 二 個 等 價 類 : (1) 有 效 (在 集 合 內(nèi) ), (2) 無 效 (在 集 合 外 )n 輸 入 條 件 為 一 個 布 爾 量 劃 分 二 個 等 價 類 , (1) 有 效 (此 布 爾 量 ), (2)無 效 (布 爾 量的 非 ) Copyright Xinjun Mao 軟件測試 28 n z = func(x, y): 當 0 x 1024 并 且 y = 0, z = -1 否 則 , z = x
12、 * lg(y)n 關(guān) 于 x的 等 價 類 : (0, 1024), (-#, 0, 1024, +#) n 關(guān) 于 y的 等 價 類 : 0, (-#, 0), (0, +#) n 測 試 用 例 : 9個 , , ; , , ; , , Copyright Xinjun Mao 軟件測試 29 n 輸 入 條 件 是 一 范 圍 (a,b) a,b以 及 緊 挨 a,b左 右 的 值 應(yīng) 作 為 測 試 用 例n 輸 入 條 件 為 一 組 數(shù) 選 擇 這 組 數(shù) 的 最 大 者 和 最 小 者 , 次 大 和 次 小 者作 為 測 試 用 例n 如 果 程 序 的 內(nèi) 部 數(shù) 據(jù) 結(jié)
13、構(gòu) 是 有 界 的 應(yīng) 設(shè) 計 測 試 用 例 使 它 能 夠 檢 查 該 數(shù) 據(jù) 結(jié) 構(gòu) 的 邊界 Copyright Xinjun Mao 軟件測試 30 1. 基 本 概 念2. 軟 件 測 試 技 術(shù)3. 軟 件 測 試 策 略4. 基 于 CASE的 軟 件 測 試 和 排 錯 Copyright Xinjun Mao 軟件測試 31 n 對 軟 件 的 最 小 單 元 模 塊 進 行 測 試 多 采 用白 盒 測 試(1) 模 塊 接 口 測 試(2) 模 塊 局 部 數(shù) 據(jù) 結(jié) 構(gòu) 測 試(3) 模 塊 獨 立 執(zhí) 行 路 徑 測 試(4) 模 塊 中 各 條 錯 誤 處 理 通
14、 道 測 試(5) 模 塊 邊 界 條 件 測 試 Copyright Xinjun Mao 軟件測試 32 Copyright Xinjun Mao 軟件測試 33 n 模 塊 相 互 調(diào) 用 時 引 入 接 口 問 題 = 集 成 測 試n 集 成 測 試 方 法 (1) 自 頂 向 下 集 成從 目 標 軟 件 系 統(tǒng) 的 主 控 模 塊 開 始 , 按 照 軟 件 的控 制 層 次 結(jié) 構(gòu) , 以 深 度 優(yōu) 先 或 者 廣 度 優(yōu) 先 的 策略 把 各 個 模 塊 集 成 在 一 起 進 行 測 試 (2) 自 底 向 上 集 成從 軟 件 結(jié) 構(gòu) 最 底 層 模 塊 開 始 自 底
15、 向 上 進 行 組 裝和 測 試 Copyright Xinjun Mao 軟件測試 34 M1 M2 M3 M4 M5 M6 M8 M7 Copyright Xinjun Mao 軟件測試 35 n 任 務(wù) 判 斷 目 標 軟 件 系 統(tǒng) 是 否 滿 足 用 戶 的 功 能 和 性 能需 求 ; 文 檔 資 料 是 否 完 整 、 準 確n 依 據(jù) 和 標 準 軟 件 需 求 規(guī) 格 說 明 書n 確 認 測 試 的 類 型 測 試 測 試 Copyright Xinjun Mao 軟件測試 36 測試用例 排錯 執(zhí)行某個測試用例 結(jié)果 假想錯誤 追加測試 確定了錯誤原因 修正程序 回歸測
16、試 n 測 試 是 為 了 發(fā) 現(xiàn) 錯 誤 , 當 發(fā) 現(xiàn) 錯 誤 后 就 要 將它 改 正 , 改 正 錯 誤 主 要 依 靠 排 錯 技 術(shù)n 排 錯 過 程 Copyright Xinjun Mao 軟件測試 37 n 排 錯 方 法 原 始 法 回 溯 法 排 除 法 基 于 歸 納 和 演 繹 的 方 法 :收 集 與 出 錯 有 關(guān) 的 所 有數(shù) 據(jù) , 假 想 一 組 出 錯 的 原 因 , 用 這 組 數(shù) 據(jù) 證 明或 者 反 駁 之 Copyright Xinjun Mao 軟件測試 38 1. 基 本 概 念2. 軟 件 測 試 技 術(shù)3. 軟 件 測 試 策 略4. 基
17、于 CASE的 軟 件 測 試 和 排 錯 Copyright Xinjun Mao 軟件測試 39 n 靜 態(tài) 分 析 器 通 過 靜 態(tài) 的 掃 描 源 程 序 , 找 出 可 能 導(dǎo) 致 程 序 出 錯 的 異 常情 況n 代 碼 審 查 器 檢 查 源 程 序 代 碼 是 否 滿 足 最 基 本 的 代 碼 標 準n 斷 言 處 理 器 檢 查 程 序 員 關(guān) 于 程 序 行 為 的 斷 言 在 程 序 執(zhí) 行 過 程 中 是 否成 立n 測 試 數(shù) 據(jù) 產(chǎn) 生 器 Copyright Xinjun Mao 軟件測試 40 n 目 的 發(fā) 現(xiàn) 錯 誤 ; 定 位 和 糾 正 錯 誤n
18、獨 立 性 可 有 獨 立 的 測 試 小 組 進 行 ; 必 須 由 開 發(fā) 人 員 完成 Copyright Xinjun Mao 軟件測試 41 1. 基 本 概 念 (軟 件 測 試 的 概 念 、 目 標 , 方 法 和過 程 等 )2. 軟 件 測 試 技 術(shù) (白 盒 和 黑 盒 軟 件 測 試 方 法 )3. 軟 件 測 試 策 略 (步 驟 ,方 法 等 )4. 基 于 CASE的 軟 件 測 試 和 排 錯 Copyright Xinjun Mao 軟件測試 42 n 思 考 題 只 要 設(shè) 計 足 夠 多 的 測 試 用 例 , 軟 件 測 試 是 否 完全 可 以 發(fā) 現(xiàn) 軟 件 中 的 所 有 錯 誤 ? Copyright Xinjun Mao 軟件測試 43Practice, Practice, and Practice