分類
CISSP

軟體測試覆蓋率分析(測試粒度最細)-表達式(expressions)和決策結構

顆粒可視為測量單元。當我們說我們的軟體被測試了50%,或者測試覆蓋率是50%,這到底是什麼意思,因為軟體有10個用例,50個場景,500個測試案例,10,000行代碼,或者200,000個表達式?50% 的測試覆蓋率可能指 5 個使用案例(十分之一)測試,但 5 個測試使用案例涵蓋 10 種情況、30 個測試案例、8,000 行和 120,000 個表達式。

使用案例從使用者(參與者)的角度記錄功能要求,通常包括主要的成功場景(又名基本或陽光日流量)和擴展場景(又名擴展、特殊、替代或雨天流)(如果有)。
https://ithelp.ithome.com.tw/upload/images/20210614/20132160UKZfOb2jzi.png
-從用例序列生成測試用例(圖片來源:MJ Escalona

可根據使用案例場景開發測試方案,並由一個或多個測試案例支援。測試案例涵蓋一個或多個通常跨越原始程式碼行的軟體功能。

一行代碼可以容納一個或多個計算機語言表達式和語句。例如,下圖中的第一行有兩個語句。
https://ithelp.ithome.com.tw/upload/images/20210614/20132160GpCPTaSy0C.jpg
-表達式和語句

參考
用例目標、場景和流程
源代碼行
第5章–決策結構
為什麼測試覆蓋率是軟件測試的重要組成部分?
代碼覆蓋率
代碼覆蓋率分析
表達式與語句
表達式與語句(視頻)

資料來源: Wentz Wu QOTD-20210329

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

作者: stevencho

從事資訊工作二十多年,對資安極具熱情,在 Network Security, Endpoint Security, 及 Mobile Security 等資安領域有超過十年以 上的經驗。曾任職精誠資訊資安產品代理部門技術經理,負責 資安產品之技術支援與大型企業導入專案。此外,他也取得了 ISO 27001 主導稽核員證書及 Check Point 的 CCSA 與 CCSE 等防 火牆產品等專業證照。此外,平常除了喜歡透過ITHelp平台及個人部落格分享文章,亦常擔任社群活動主辦者及志工,連結資安同好聯誼及共好學習,並協助對於CISSP有興趣的同學與同好準備認證考試。