軟件測試 fivethday(基於缺陷模式的軟件測試)

一、安全漏洞模式

此類缺陷會給系統留下安全隱患,爲攻擊該系統開了綠燈。

1.緩衝區溢出(buffer overflow)漏洞模式

當程序要在一個緩衝區內存儲比該緩衝區的大小還要多的數據時,即會產生緩衝區溢出漏洞。

1)數據拷貝造成的緩衝區溢出;

2)格式化字符串造成的緩衝區溢出;(比如往固定數組裏面寫入大於最大索引長度的內容會溢出)

2.競爭條件(Race Condition)(競態)

3.風險操作(Risky Operation)

如果不恰當地使用了某些標準庫函數,可能會帶來安全隱患。

比如說rand()和random(),它們生成僞隨機值時表現出來的性能是非常差的,很容易被破解。

二、疑問代碼模式

此類問題未必會造成系統的錯誤,起提示作用。

性能缺陷:降低性能;

爭議代碼:讓人費解;

低性能模式

該模式導致軟件運行效率低下,因此建議採用更高效的代碼來完成同樣的功能;

包括低效代碼、使用多餘函數、Java顯示垃圾回收、冗餘代碼、頭文件中定義的靜態變量、不必要的文件包含、字符串低效操作和更簡單的運算可以代替等。

三、規則模式

軟件開發總要遵循一定的規則,某些團隊也有一些開發規則,違反這些規則是不允許的。


常見的缺陷模式:故障模式、安全漏洞模式、缺陷模式和規則模式。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章