技術問答
技術文章
iT 徵才
Tag
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2022 iThome 鐵人賽
DAY
23
1
自我挑戰組
開始系統測試
系列 第
23
篇
Day 23 | 測試方法(二) - 靜態分析
14th鐵人賽
Pancy
2022-10-08 20:01:14
1176 瀏覽
分享至
靜態分析方法
分析軟體產品(如:需求或程式碼),而不執行這些工作產品,因為不需要運行程式的程式碼,所以稱為「靜態」分析。
靜態分析可以包含下面幾個部份
符合開發的原則和標準
與控制流程(control flow)結合 - 控制流程分析
程式碼複雜度 - 複雜度分析
資料流分析
使用了未定義的變數
變數定義了卻未使用
控制流分析
流程圖是帶有開始和結束點的有向圖
程式的指令是通過結點來表示的
一個沒有分支的指令可以用一個節點表示
指令之間的路徑是通過邊(控制流)來描述的
圖內的開始和結束節點可以忽略
複雜度分析
複雜度分析給出一組能描述程式碼複雜度特徵的度量
循環複雜度(Cyclomatic complexity)
V(G) = e-n+2p
e:邊數
n:節點個數
p:無連接部份的數目(一般p=1)
靜態測試的意義
在測試執行之前盡早發現缺陷
通過度量的計算(例如高複雜性測量),提早警示程式碼和設計可能存在的問題
可以發現動態測試過程中不容易發現的缺陷
可以發現軟體模組間的依賴性和不一致性
改進程式碼跟設計的可維護性
從開發過程中學習經驗教訓,從而預防缺陷
靜態測試可以發現的缺陷
引用一個沒有定義值的變數
從未使用過的變數
模組和組件之間API不一致
不會被執行到的程式碼(unreachable code)或無用程式碼(dead code)
違背開發規則
安全漏洞
程式碼和軟體模型的語法錯誤等
留言
追蹤
檢舉
上一篇
Day 22 | 測試方法(一) - 測試方法的分類與評審制度
下一篇
Day 24 | 白箱測試
系列文
開始系統測試
共
30
篇
目錄
RSS系列文
訂閱系列文
13
人訂閱
26
Day 26 | 性能測試
27
Day 27 | Web測試
28
Day 28 | 手機APP測試(一)
29
Day 29 | 手機APP測試(二)
30
Day 30 | 自動化測試概述
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
11614
篇
完賽人數
106
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
17th鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
熱門問題
Esxi 8.0版本上的虛擬機器, 安裝的作業系統是Windows Server 2025, 確定輸入的密碼是正確的, 無法登入(顯示密碼錯誤)
HP iLo Advanced trial license
在線求大神,千奧軟體主機怎麼安裝
因為網路磁碟的關係造成系統自動重新開機
Docker Compose 建立 GitLab 容器,執行器 Runner 運行流水線問題
windows server無法使用gpedit.msc
Java證照題目(main() method)
iatf16949資訊稽核
微軟更新重開機很久
iatf16949資訊稽核內容
熱門回答
iatf16949資訊稽核
Esxi 8.0版本上的虛擬機器, 安裝的作業系統是Windows Server 2025, 確定輸入的密碼是正確的, 無法登入(顯示密碼錯誤)
因為網路磁碟的關係造成系統自動重新開機
微軟更新重開機很久
請問有推蘪的server , vmware 防毒軟體嗎
熱門文章
第5天,數位憑證的格式 PEM、DER / 小辣椒魷魚羹(台北萬華)| 30天滷肉飯
第5天,Cloudflare 的費用 / 潤餅捲 | 30天板橋湳雅夜市
第6天,憑證信任鏈 / 阿輝滷肉飯 浮洲市場小吃(新北板橋) | 30天滷肉飯
[為你自己學 n8n] 第 5 天,JSON 不是人名!搞懂自動化的基礎語言!
[為你自己學 n8n] 第 9 天,Google 大神駕到:串接服務的必修儀式!
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}