Windows軟體效能測試工具與方法

Windows軟體效能測試工具與方法

這篇文章主要說明企業內部使用的Windows軟體,

進行效能測試時應該考慮的效能指標、測試方法與工具。

我們在安裝軟體的時候,希望可以使用該軟體功能,

另一方面我們又不希望該軟體造成電腦的效能負擔。

所以針對使用者常見的使用情境、上網、檔案複製、安裝軟體、網路、CPU、記憶體使用等效能做觀察,

看看是否因為該軟體的安裝,造成額外太多系統負擔,我們會討論幾個效能測試指標與測試工具。

 

效能測試報告範例

 

[pastacode lang=”markup” message=”” highlight=”” provider=”manual”]

EXECUTIVE SUMMARY
TABLE OF CONTENTS 
REVISION HISTORY 
PRODUCTS AND VERSIONS 
PERFORMANCE METRICS SUMMARY 
TEST RESULTS 
	BENCHMARK 1 – INSTALLATION TIME (SECONDS) 
	BENCHMARK 2 – USER INTERFACE LAUNCH TIME (MILLISECONDS) 
	BENCHMARK 3 – WORD DOCUMENT LAUNCH TIME (MILLISECONDS) 
	BENCHMARK 4 – INTERNET EXPLORER LAUNCH TIME (SECONDS) 
	BENCHMARK 5 – BOOT TIME (SECONDS) 
	BENCHMARK 6 – SCAN TIME ON DEMAND (SECONDS) 
	BENCHMARK 7 – SCAN TIME ON SCHEDULE (SECONDS) 
	BENCHMARK 8 – CPU USAGE DURING SCAN (PERCENT) 
	BENCHMARK 9 – BROWSE TIME (SECONDS) 
	BENCHMARK 10 – NETWORK THROUGHPUT (SECONDS) 
	BENCHMARK 11 – FILE COPY, MOVE AND DELETE (SECONDS) 
	BENCHMARK 12 – FILE COMPRESS AND DECOMPRESS (SECONDS) 
	BENCHMARK 13 – MEMORY USAGE DURING SYSTEM IDLE (MEGABYTES) 
	BENCHMARK 14 – CPU USAGE DURING IDLE (PERCENT) 
DISCLAIMER AND DISCLOSURE 
CONTACT DETAILS 
APPENDIX 1 – TEST ENVIRONMENT 
APPENDIX 2 – METHODOLOGY DESCRIPTION 

[/pastacode]

 

效能測試指標與測試情境

衡量軟體效能的相關指標可以包含如下:

如果是防毒軟體會額外有所謂的”掃描”動作的測試。

指標 說明
Installation Time  整個軟體安裝完畢到使用者可以正常使用所需的時間。
 User Interface Launch Time  啟動該防毒軟體所需要的時間。由於可能會受到快取的影響,所以執行兩次取平均。
Word Document Open Time
  •  WORD開啟時間。測試WORD開啟一個 10MB的文件檔所需要的時間。
  • 為避免受到記憶體快取的影響,每次測試必須重新開機。
  • 測試工具AppTimer
Chrome Launch Time
  •  瀏覽器啟動所需花的時間。
  • 測試方式與WORD相同。
 Boot Time 開機時間。
 Scan Time on Demand  整個硬碟掃描 5G檔案所需花的時間
Scan Time on Schedule  整個硬碟掃描 5G檔案所需花的時間
 Average CPU Usage during Scan  當執行掃描時,CPU的使用狀況
Browse Time 瀏覽網站所需花的時間
Network Throughput 瀏覽網站下載檔案時的網路流量
File Copy, Move and Delete 執行檔案操作時所需花的時間。檔案的樣本包含:

  • Office (e.g. Microsoft Office documents, Adobe PDF, Zip files, etc)
  • 媒體檔案 (e.g. images, movies and music)
  • 系統檔案(e.g. executables, libraries, etc).
File Compress and Decompress 檔案壓縮與解壓說的時間
Memory Usage during System Idle 當系統不忙碌時,防毒軟體占用記憶體的比例
Average CPU Usage during Idle 當系統不忙碌時,防毒軟體占用CPU的比例

Windows測試環境準備

為了讓測試結果一致,我們會準備測試機器,網站或是檔案伺服器等固定的環境與 Image.

為減少其他干擾,Windows 設定上須注意下列事項:

1. Disabled Automatic Updates.
2. Changed User Account Control settings to “Never Notify”.
3. Disable Windows Defender automatic scans to avoid unexpected background activity.
4. Disable the Windows firewall to avoid interference with security software.
5. Disabled Superfetch to ensure consistent results.
6. Disabled updates, accelerators and compatibility view updates in Internet Explorer 8.

另外,也會統一安裝相關測試與衡量工具。

如何測試安裝時間?

一般來說,軟體的安裝可以分為四大部分

  • 安裝過程中的使用者輸入與操作 (不計入安裝時間)
  • 安裝前的掃描動作 (計入安裝時間)
  • 軟體安裝   (計入安裝時間)
  • 安裝完後的病毒碼更新  (計入安裝時間)

如何測試應用程式開啟時間?

http://www.passmark.com/products/apptimer.htm

AppTimer Main Screen

如何測試開機時間?

可以使用這個工具 xbootmgr https://technet.microsoft.com/en-us/windows/jj663181.aspx

“xbootmgr.exe -trace boot –prepSystem”
“xbootmgr.exe -trace boot -numruns 5”.

衡量開機時間BootTimer

另外筆者也推薦這個工具, http://www.planetsoft.org/utils/BootTimer.exe

Boot Time Utility

紀錄開機過程的活動資訊

另外可以使用 Process Monitor 紀錄整個開機過程會執行的相關活動。

https://www.sophos.com/en-us/support/knowledgebase/119038.aspx

https://support.symantec.com/en_US/article.TECH92496.html

如何測試掃描時間?

通常我們會準備一定檔案數量的樣本。為了讓結果更模擬使用者一般的狀況,檔案的型態會包含各式類型。

[pastacode lang=”markup” message=”” highlight=”” provider=”manual”]

avi 247 1024MB
.dll 773 25MB
.exe 730 198MB
.gif 681 63MB
.doc 160 60MB
.docx 267 81MB
.jpg 2904 318MB
.mp3 333 2048MB
.png 451 27MB
.ppt 97 148MB
.sys 501 80MB
.wav 430 260MB
.wma 585 925MB
.xls 329 126MB
.zip 14 177MB

[/pastacode]


Process Explorer – TechNet – Microsoft
如何測試 CPU與記憶體使用?

記憶體的使用要觀察的是 “Prviate Byte History”

 

如何測試瀏覽時間?

一般瀏覽器都會有類似的功能。例如 Chrome Developer tool > Timeline

如何測量指令間所需的時間?

我們會用BAT 或是程式將大量的檔案壓縮、拷貝、複製等操作,

如何衡量這個指令過程所需的時間呢?可以用下列工具

ptime

https://www.raymond.cc/blog/wp-content/plugins/download-monitor/download.php?id=3286

ptime

TimeThis

https://www.raymond.cc/blog/wp-content/plugins/download-monitor/download.php?id=3287

timethis

TimeMem

https://www.raymond.cc/blog/wp-content/plugins/download-monitor/download.php?id=3289

timemem

PowerShell

powershell measure command

善用系統環境變數 %time%

ECHO Start Measure %Time% >> timer.txt
user COMMAND here
ECHO Stop Measure %Time% >> timer.txt

dos time variable

 

測試工具列表

工具 用途
AppTimer : http://www.passmark.com/products/apptimer.htm 用來測試應用程式啟動所需花的時間
Process Explorer https://technet.microsoft.com/en-us/sysinternals/processexplorer.aspx 觀察記憶體與CPU使用量
ptime https://www.raymond.cc/blog/wp-content/plugins/download-monitor/download.php?id=3286 衡量指令執行所花的時間
BootTimer http://www.planetsoft.org/utils/BootTimer.exe 衡量開機時間

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *