效能/負載/壓力測試 差異

參考網址:Performance, Load & Stress Testing on Mobile Apps

一般這三種測試容易令人混淆,效能測試是在一般正常操作形況下,所有的數據是否符合預期的(如: 系統回應時間 ),再來負載測試是在系統負荷量最高的時候去操作系統,看是否會有問題,最後壓力測試則是在超過系統能夠負荷的情況下或是一些突然的意外下系統能不能很快的恢復正常。

參考網址:Testing Performance of Mobile Apps – Part 1: How Fast Can Angry Birds Run?

文中提到,要進行手機 app 的測試時可以先將系統分為
Client application performance : 又分為 瀏覽器與本地的應用程式,還有一些裝置的配置(如:處理器與記憶體)
Network performance : 像是在不同的網路頻寬下,或是在不同國家的網路等
Server performance :分析一些會跟 Server 有關係的功能

也可以透過相同手機但是卻是不同的操作系統去比較,
所以如果要進行效能測試要分析系統相關的一些功能,也要知道多少效能才是符合我們預期的。

 

參考網址:负载测试、压力测试和性能测试的异同

文章提到說,效能測試是為了獲得系統在某種負載條件下的數據,然後根據相同的負載條件去做調整,提高系統的效能。再來,也提到說壓力測試其實也可以被看作負載測試的一種,就是在高負載的情況下的測試,查看系統在高負載的情況下會不會有問題,或是能不能很快從錯誤中恢復。所以像我們當初的登入登出的 case ,在記憶體很少的情況下,又重複登出登入,達到高負載的情況,應該也可以算是壓力測試。

 

參考網址:性能测试vs负载测试vs压力测试

效能測試主要在測試系統的表現是否如我們所期望的相同,例如記憶體的使用情況,或是回應的時間。因此我們可以試著對於 my mix 進行測試,看從我們送出要求後,得到回應並播放歌的時間是否符合期待。
負載測試是藉由增加負載來看系統的效能,看在不同的負載下系統是否都會正常運作,像是 may 之前提到在一起聽時可以增加一起聽的人數來做負載測試,或是沿著跟隨的時間來做測試,但是增加一起聽的人數可能會比較需要去思考該如何達成。
最後是壓力測試,文章提到,壓力測試主要是系統在高負載的處理能力,在壓力逐漸增加時,系統效能應該是緩慢下降,而不是直接 crash,也可以針對系統資源做測試,像是在系統的記憶體快耗盡時,系統會不會正常運作,所以像是之前 oom 的問題,就在當系統資源太少,然後又在記憶體快耗盡時,就產生了 crash ,就是壓力測試。

 

參考網址:性能测试知多少—性能测试流程

 

這篇文章主要在說效能測試的流程,在進行效能測試的時候必須一開始先去分析需求,需要跟相關人士進行討論,來確訂明確的需求。再來建立測試計畫,確認測試環境的準備,需要那些軟硬體的設備,測試的目的與分析的結果為何,之後再分析一些效能測試的工具,來幫助我們進行測試,最後執行完測試的結果必須加以分析後,再來重新調整系統。

 

參考網址:性能测试,负载测试,压力测试有什么区别

壓力測試可以有三種方向
Spike testing:短時間的極端負載测试 (例如在搶高鐵票的時候,在某個時間會突然湧入大量用戶)
Extreme testing:在過量用户下的負載測試(例如某網站最多只能允許 100 人同時在線上操作,卻給他 110 人) 
Hammer testing:連續執行所有能做的操作 

另外,壓力測試又分為穩定壓力測試與破壞壓力測試,
穩定壓力測試:在特定壓力值,長時間一直進行,可以查看是否有 oom,或是系統會不會反應越來越慢。
破壞性壓力測試:透過不斷的加壓可以讓原本穩定壓力測試的問題更快的發生。

所以我們之後可以嘗試在測試一起聽的時候,進行像是短時間突然很多人一起聽,或是超過一起聽的人數時,看看是否會有其他問題出現。

 

廣告

發表迴響

Please log in using one of these methods to post your comment:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s