壓力測試
壓力測試:是在一定的負荷條件下長時間連續進行系統給系統性能造成的影響。
負載測試:在一定的工作負荷下,給系統造成的負荷及系統響應的時間。
是在**強負載(大數據量、大量並發用戶等)**下的測試,查看應用系統在峰值使用情況下操作行為,從而有效地發現系統的某項功能隱患、系統是否具有良好的容錯能力和可恢復能力。壓力測試分為高負載下的長時間(如24小時以上)的穩定性壓力測試和極限負載情況下導致系統崩潰的破壞性壓力測試。
壓力測試可以被看作是負載測試的一種,即高負載下的負載測試,或者說壓力測試采用負載測試技術。通過壓力測試,可以更快地發現內存泄漏問題,還可以更快地發現影響系統穩定性的問題。
負載測試
1負載測試是從並發量維度出發,不斷增加並發量發情況下,系統的性能指標
壓力測試是從訪問時間的維度出發,在並發量一定的情況下不斷增加連續訪問的時間情況下,系統的性能指標。
舉例:負載測試:服務員在單位時間內不斷增加開發工作量,查看服務員在不同工作量下完成工作的程度,從而了解該服務員的技術水平
簡單總結如下,
負載測試是通過改變系統負載方式、增加負載等來發現系統中所存在的性能問題。負載測試是一種測試方法,可以為性能測試、壓力測試所采用。
性能測試是為獲取或驗證系統性能指標而進行測試。多數情況下,性能測試會在不同負載情況下進行。
壓力測試通常是在高負載情況下來對系統的穩定性進行測試,更有效地發現系統穩定性的隱患和系統在負載峰值的條件下功能隱患等。
3.專項測試
1.為什么要專項測試?
手工測試之后,自動化測試之后,接口測試,性能測試之后,線下環境、預發布環境都沒有問題了,測試工作看似完整,但是到了用戶生產環境,安裝使用過程中還是有很多之前沒有預料的問題被反饋過來,比如: crash問題、設備兼容性問題、電量消耗過快問題等。
這些問題通過上邊的測試難以找出,所以要引入專項測試包括:兼容性測試、流量測試、電量測試、弱網絡測試、穩定性測試、安全測試和環境相關測試。
2.常見的專項測試:
兼容測試:APP版本/分辨率/同一賬號並發登錄/主流廠商和系統的兼容
安全性測試:敏感信息、賬號密碼、數據通訊等是否加密
流量測試:WIFI、4G等情況(分兩種1.客戶端消耗2.后台消耗)
網絡測試:不同網絡環境、不同信號下運行程序
穩定性測試:主要針對(閃退、卡死、等)
電量測試:App運行后的實際耗電量
環境測試:(干擾、權限、三方依賴、沖突。交互、安裝/卸載等測試)
tps/qps
tps:Queries Per Second意思是“每秒查詢率”,是一台服務器每秒能夠相應的查詢次數,是對一個特定的查詢服務器在規定時間內所處理流量多少的衡量標准。
qps:是TransactionsPerSecond的縮寫,也就是事務數/秒。它是軟件測試結果的測量單位。一個事務是指一個客戶機向服務器發送請求然后服務器做出反應的過程。客戶機在發送請求時開始計時,收到服務器響應后結束計時,以此來計算使用的時間和完成的事務個數
系統吞吐量
一個系統的吞度量(承壓能力)與request對CPU的消耗、外部接口、IO等等緊密關聯。單個reqeust 對CPU消耗越高,外部系統接口、IO影響速度越慢,系統吞吐能力越低,反之越高。
系統吞吐量幾個重要參數:QPS(TPS)、並發數、響應時間
QPS(TPS):每秒鍾request/事務 數量
並發數: 系統同時處理的request/事務數
響應時間: 一般取平均響應時間
理解了上面三個要素的意義之后,就能推算出它們之間的關系:
QPS(TPS)= 並發數/平均響應時間 或者 並發數 = QPS*平均響應時間