軟件測試&性能測試&安全測試

軟件測試原則

1.所有測試都應該追溯到用戶需求
2.儘早不斷地測試(代碼之間互相關聯)
3.測試發現的錯誤中80%很可能起源於20%的模塊中
4.指定嚴格的測試計劃
5.注重迴歸測試(指修改了舊代碼後,重新進行測試以確認修改沒有引入新的錯誤或導致其他代碼產生錯誤)

軟件產品質量模型

1.功能新:滿足用戶需求
2.可靠性:第一層:設備最好不要出故障;第二層:設備出現故障了不要影響主要的功能和業務;第三層:如果影響了主要功能和業務,系統可以儘快定位並恢復。
3.易用性:易懂、易學、易用、漂亮好看(用戶體驗感好)
4.效率:產品性能(比如,刪除,單選和多選)
5.可維持性:可不斷更新
6.可移植性:不同系統都可以使用

軟件質量模型保證

目的:使軟件過程對管理人員來說可見。

軟件測試流程

1.需求文檔
2.編寫測試用例
3.評審測試用例
4.搭建測試環境
5.等到開發提交測試包
6.部署測試包
7.冒煙測試(對軟件主體基本功能進行基本測試)
8.執行測試用例
9.BUG跟蹤處理(提交和迴歸測試bug)
10.N輪測試之後符合需求
11.測試結束

性能測試

什麼是軟件性能

是軟件的一種非功能特性,它關注的不是軟件是否能夠完成特定的功能,而是在完成該功能是展示出來的及時性。

用戶眼中的性能:

在這裏插入圖片描述

開發眼中的性能:

在這裏插入圖片描述

管理員眼中的性能:

在這裏插入圖片描述

測試眼中的性能:

1.測試人員需要考慮全面的性能,包括用戶、開發、管理員等哥哥視角的性能;
2.測試人員在做性能測試時除開要關注表面的現象如響應時間,也需要關注本質,比如用戶看不到的服務器資料利用率,架構設計是否合理?代碼是否合理等言方方面面。

性能測試的類型

1.基準測試:在給系統施加較低壓力時,查看系統的運行狀況並記錄相關數做爲基礎參數;
2.負載測試:是指對系統不斷的增加壓力或增加一定壓力的持續時間,直到系統的某項或多項性能指標達到安全臨界值,例如某種資源已經達到飽和狀態等;
3.壓力測試:壓力測試時評估系統處於或超過預期負載時系統的運行情況,關注點在 與系統在峯值負載或超出最大負荷情況下的處理能力;
4.穩定性測試:給系統加載一定業務壓力的情況下,使系統運行一段時間,以此檢測系統是否穩定;
5.併發測試:測試多個用戶同時訪問同一個應用、同一個模塊或者數據記錄時是否存在死鎖或者其他性能問題。
參考:性能測試

安全測試

安全需求

1.認證:對認證的用戶的請求返回。
2.訪問控制:對未認證的用戶的權限控制和數據保護。
3.完整性:用戶必須準確的收到服務器發送的消息。
4.機密性:信息必須準確的傳達給預期的用戶。
5.可靠性:失敗的頻率是多少?網絡從失敗中恢復需要多長時間?採取什麼措施來應對災難性的失敗?(個人理解這個地方應該更偏向於容錯容災測試的範疇)
6.不可抵賴:用戶應該能證明接收到的數據來自特定的服務器。

常見的安全測試內容

權限控制

1.用戶權限控制

我們假設存在兩個用戶A,B;其中A的權限級別很高,B的權限級別則很低:
只有A能進行的操作,B能不能進行操作;
只有A能看到的頁面,B能不能看到;

2.頁面權限

必須登錄才能看到的頁面,不登錄直接訪問能否看到?
必須A-B-C的頁面,能否直接A-C?
通常來說單純的權限控制頁面測試不復雜,但是因爲權限控制和後續的URL跳轉、Session等方面結合的比較緊密,所以單獨提出來。

SQL注入

URL安全測試

XSS(Cross Site Scripting,跨站腳本攻擊)

CSRF(Cross-Site Request Forgery,跨站請求僞造)

URL跳轉漏洞

其他安全方面的考量
參考:安全測試

發佈了84 篇原創文章 · 獲贊 72 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章