測試用例模板
測試用例 (Test case)
用例名稱
用例編號 重要程度
用例設計人 代碼負責人
測試人 測試時間
English version
Title
Case ID Level
Designer Developer
Tester Time
測試場景描述 (Case scenario)
場景描述
子場景(可選)
子場景1 例如,返回10條記錄
子場景2 例如,返回100條記錄
測試流程 (Testing process)
描述被測試應用場景的商業流程,流程必須在實際測試中發揮良好的導航作用,使不熟悉該系統的使用者能夠對商業流程有清晰的了解。
(被測的商業流程應該事先通過檢測,以確保功能的順利運行。應用程序代碼在測試階段應該被凍結)
1.
2.
3.
測試條件和要求 (Requirements)
環境要求
硬件要求:
WEB服務器 - 配置1.2 (詳細配置信息見測試計劃文檔,或附錄)
軟件要求:
補丁要求:
網絡要求:
性能基線和衡量指標 (Testing baseline & metrics)
前提 (測試結果有效的先決條件)
1. 例如:無內存泄漏;HTTP錯誤個數為0
2. 數據庫數據要求
例如:流水表已有20萬條記錄
3. 并發連接數要求
4. 測試周期或測試次數
性能基線
1. 例如:每秒鐘完成XXX筆交易
2.
3.
監視參數 (詳情見附錄)
1. 例如:Performance Monitor: Private Byte
2.
3.
性能計算方式
1. 例如:數據庫交易表增加紀錄數 / 總時間(秒)
2.
3.
測試數據和腳本 (Testing data, Scripts)
測試數據準備
包括登陸賬號組,輸入數據;可以事先保存在某個文本文件中
測試數據庫
數據庫、表、存儲過程、視圖、用戶帳號、相關數據
測試腳本
根據測試工具編寫相應腳本或編寫手工測試腳本
for Example
1LBrowser
1. Navigate to the home page of the Online Shopping site.
2. Click “Help.”
3. Click “FAQ.”
4. Click “Shopping” on FAQ.
5. Click “Shopping/Our Products” on the main menu.
6. Click “Product Search.”
7. Click “Special Offers.”
8. Click “Store Finder.”
9. Click Central Scotland to view shop addresses.
10. Click “Edinburgh” to see details.
11. Click “After Sales.”
12. Click “Basket.”
13. Navigate to the home page of the Online Shopping site.
14. Click on Advert at bottom of page.
測試手段 (Testing instrument)
例如: 編寫自動測試工具
或使用專用測試工具。
備注 (Remarks)
附錄A – 應用軟件性能數據分類
4.1 應用軟件性能數據概述
在企業級應用的負載測試過程中,測試工具通過部署一整套性能監視器,來收集和顯示各個架構層次、服務器和組件上的性能數據,包括網絡、操作系統、應用服務器、中間件、應用程序、.NET服務器、Web服務器和數據庫服務器。在進行負載測試時,這些數據用來精確測量系統各個方面的性能,從而用戶可以快速、簡便地定位問題和瓶頸的來源。最終,這些數據用來生成各種文檔和圖表,并判斷出應用程序的性能是否滿足業務的需要。
4.2 應用軟件常用性能數據描述
1. Number of Concurrent Users (NCU)
并發用戶數 – 在指定時刻,系統觀察到的并發用戶連接數。
2. Request Per Second (RPS)
每秒處理請求數 – 指示服務器平均每秒鐘能處理的用戶事務請求數量。
3. Response Time
響應時間 – 指從客戶發出一個事務請求到收到處理結果的最后一個字節的時間長度。
4. Time to First Byte (TTFB)
客戶端收到響應的第一個字節的平均毫秒數。
5. Time to Last Byte (TTLB)
客戶端收到響應的最后一個字節的平均毫秒數。
6. Think Time
思考時間 – 用戶在發送下一個請求前花在瀏覽頁面上的時間。
7. Hits per Second
每秒點擊次數
8. Throughput
吞吐量 – 以kilobyte為單位,客戶每秒接收的數據總量。
9. Pages per Second
每秒下載頁數 – 每秒內從Web服務器上下載到客戶端的Web頁面數量。
10. User-define Data Point (supported by LoadRunner)
用戶自定義性能指標 – 由LoadRunner支持的自定義性能指標,比如: Transaction Response Time, Transaction Per Second Passed, Failed。
11. %Processor Time:CPU平均利用率
12. %User Time:用戶態CPU平均利用率
13. % Privileged Time:核心態CPU平均利用率
14. Processor Queue Length:處理器隊列中的線程數
15. Context Switches per Second:每秒線程切換次數
16. Interrupts/Sec:每秒中斷數
17. Page Faults / sec:每秒內存換頁數
18. Memory, Available Bytes:平均剩余的可用內存
19. Private Bytes:進程分配內存數
20. Process, Handle Count:進程使用系統句柄數
21. Memory, Pool Paged Bytes:可交換到硬盤的系統物理內存byte數。
22. Memory, Pool Non-paged Bytes:不可交換到硬盤的系統物理內存byte數。
23. Network Interface, bytes total/sec:網絡帶寬利用率
24. Network Interface, Output Queue Length:網絡適配器輸出隊列長度
25. Physical Disk, %Disk Time:物理磁盤利用率
26. Physical Disk, Avg Disk Queue Length:物理磁盤平均磁盤I/O隊列長度
27. Physical Disk, Current Disk Queue Length:物理磁盤當前磁盤I/O隊列長度
28. Physical Disk, Disk Read/Sec, Disk Write/Sec:物理磁盤每秒讀/寫操作次數
29. COM+ Authenticate (by LoadRunner):COM+ 調用級別驗證成功頻率
30. COM+ Authenticate Failed (by LoadRunner):COM+ 調用級別驗證失敗的頻率
31. COM+ Activation (by LoadRunner):COM+ 應用激活頻率
32. COM+ Failed (by LoadRunner):COM+ 應用關閉頻率
33. COM+ Thread Start (by LoadRunner):STA的線程啟動的比率
34. COM+ Thread Terminate (by LoadRunner):STA的線程中止的比率
35. Transaction Duration (by LoadRunner):COM+事務的平均周期
36. Transaction Start (by LoadRunner):COM+事務啟動比率
37. Transaction Prepared (by LoadRunner):COM+事務進入準備階段的比率
38. Transaction Aborted (by LoadRunner):COM+事務回滾的比率
39. Transaction Commited (by LoadRunner):COM+事務提交的比率
40. Object LifeTime(by LoadRunner):COM+組件平均生命期
41. Object Create (by LoadRunner):創建COM+組件實例的比率
42. Object Destroy (by LoadRunner):釋放COM+組件實例的比率
43. Object Activate (by LoadRunner):COM+ JIT-actived對象激活的比率
44. Object Deactivate (by LoadRunner):COM+ JIT-actived對象失活的比率
45. Disable Commit (by LoadRunner):COM+對象處于DisableCommit狀態的比率
46. Enable Commit (by LoadRunner):COM+對象處于Enable狀態的比率
47. Set Complete (by LoadRunner):COM+對象處于SetComplete狀態的比率
48. Set Abort (by LoadRunner)COM+對象處于SetAbort狀態的比率
49. COM+ Method Duration (by LoadRunner):COM+方法調用平均持續時間
50. COM+ Method Frequency (by LoadRunner):COM+方法調用頻率
51. COM+ Method Failed (by LoadRunner):COM+方法失敗的頻率
52. COM+ Method Exception (by LoadRunner):COM+方法拋出異常的頻率
53. Active Server Page, Request per Second:ASP每秒執行請求數
54. Active Server Page, Request Queue:ASP請求隊列長度
55. Active Server Page, Requests Execute Time:ASP平均請求執行時間
56. Active Server Page, Requests Wait Time:ASP平均請求等待時間
57. Active Server Page, Session Current:當前活動Session計數
58. .NET CLR Data, SqlClient, Current # Pooled Connection:當前被連接池緩存的數據庫連接
59. .NET CLR Data, SqlClient, Current # Pooled and Non-pooled Connection
當前所有的數據庫連接,緩存和未緩存的
60. .NET CLR Memory, Gen 0、1、2 heap size:.NET中0、1、2代虛擬堆的大小
61. .NET CLR Memory, # bytes in all Heaps:.NET中托管內存的總數
62. ASP.NET, Application Restarts:ASP.NET中應用重新啟動的次數
63. ASP.NET, Work Process Restarts:ASP.NET中工作進程重新啟動的次數
64. ASP.NET, Request Execution Time:ASP.NET平均請求執行時間毫秒數
65. ASP.NET, Request Wait Time:ASP.NET平均請求等待時間毫秒數
66. ASP.NET, Requests Queued:ASP.NET平均請求隊列長度
67. ASP.NET Application, Requests/Sec:ASP.NET某特定應用每秒鐘處理的請求數
68. ASP.NET Application, Requests Executing:ASP.NET某特定應用正在執行的請求數
69. ASP.NET Application Sessions Active:ASP.NET某特定應用中活動的Session數
70. Web Service, Get Requests per Second:HTTP的GET方法每秒請求數
71. Web Service, Post Requests per Second:HTTP的POST方法每秒請求數
72. Distributed Transaction Coordinator, Transactions/Sec
每秒的分布式事務數
73. Distributed Transaction Coordinator, Committed Transactions
提交的分布式事務總數
74. Distributed Transaction Coordinator, Aborted Transactions
回滾的分布式事務總數
75. Distributed Transaction Coordinator, Active Transactions
當前活動的分布式事務數
76. Distributed Transaction Coordinator, Response Time – Average
分布式事務從開始到提交的平均時間間隔
77. SQL Server, Cache Manager, Cache Hit Ratio:SQL Server的緩存區命中率
78. SQL Server, Cache Manager, Cache Used Counts per Second
SQL Server每秒內使用的緩存對象數
79. SQL Server, Locks, Exclusive/Shared & Users blocked
SQL Server 每秒內用戶由于表級鎖被阻塞數
80. SQL Server, % Procedure Cache Used & % Procedure Cache Active
SQL Server存儲過程緩存使用率
81. SQL Server, Transaction/Sec:SQL Server每秒的事務數
82. SQL Server, General statistics, User Connections
SQL Server 當前用戶連接數
83. SQL Profiler, Audit Login/Logout
SQL Profiler中跟蹤用戶登入/登出數
84. SQL Profiler, Stored Procedure, RPC Completed
SQL Profiler中跟蹤存儲過程的調用
85. SQL Profiler, TSQL, Batch Completed:SQL Profiler中跟蹤TSQL語句的調用
86. SQL Profiler, SQL Transaction:SQL Profiler 中跟蹤事務的提交。
4.3 應用軟件性能數據分類
企業應用程序可以根據系統架構分成以下類型
Client/Server – 客戶機/服務器架構 l 基于瀏覽器/Web服務器的三層架構 l 基于中間件應用服務器的三層架構 l 基于Web服務器和中間件的多層架構
以上架構都由客戶機、Web服務器、中間層應用服務器、數據庫服務器組成。通過針對不同層次的性能指標監測,可以分析出整體架構的性能指標和性能瓶頸。
1. 數據庫服務器的性能指標監測
l Processor, %Processor Time
Processor, %User Timel
Processor, %l Privileged Time
Processor, Processor Queue Lengthl
System, Contextl Switches per Second
Memory, Page Faults/secl
Memory, Availablel Bytes
Memory, Pool Paged Bytesl
Network Interface, bytes total/secl
l Network Interface, Output Queue Length
Physical Disk, %Disk Timel
l Physical Disk, Current Disk Queue Length
Physical Disk, Avg Disk Queuel Length
Physical Disk, Disk Read/Sec, Disk Write/Secl
SQL Server,l General statistics, User Connections
SQL Server, Transaction/Secl
SQLl Server, Cache Manager, Cache Hit Ratio
SQL Server, Cache Manager, Cachel Used Counts per Second
SQL Server, Locks, Exclusive/Sharedl & Users blocked
SQL Server, % Procedure Cache Usedl & % Procedure Cache Active
SQL Profiler, Audit Login/Logoutl
SQL Profiler, Storedl Procedure, RPC Completed
SQL Profiler, TSQL, Batch Completedl
SQLl Profiler, SQL Transaction
2. Web服務器的性能指標監測
Processor, %Processorl Time
Processor, %User Timel
Processor, % Privileged Timel
l Processor, Processor Queue Length
System, Context Switches per Secondl
l Process, Private Bytes
Memory, Page Faults/secl
Memory, Availablel Bytes
Memory, Pool Paged Bytesl
Network Interface, bytes total/secl
l Network Interface, Output Queue Length
Physical Disk, %Disk Timel
l Physical Disk, Avg Disk Queue Length
Number of Concurrent Users (NCU)l
l Request Per Second (RPS)
Response Timel
Time to First Byte (TTFB)l
l Time to Last Byte (TTLB)
Think Timel
Web Service, Get Requests perl Second
Web Service, Post Requests per Secondl
Active Server Page,l Request per Second
Active Server Page, Request Queuel
Active Serverl Page, Requests Execute Time
Active Server Page, Requests Wait Timel
l Active Server Page, Session Current 。
3. 基于ASP.NET的Web服務器或Web Service服務器性能指標監測
Processor, %Processor Timel
Processor, %User Timel
l Processor, % Privileged Time
Processor, Processor Queue Lengthl
System,l Context Switches per Second
Process, Private Bytesl
Memory, Pagel Faults/sec
Memory, Available Bytesl
Memory, Pool Paged Bytesl
l Network Interface, bytes total/sec
Network Interface, Output Queuel Length
Physical Disk, %Disk Timel
Physical Disk, Avg Disk Queuel Length
Number of Concurrent Users (NCU)l
Request Per Second (RPS)l
l Response Time
Time to First Byte (TTFB)l
Time to Last Byte (TTLB)l
l Think Time
Web Service, Get Requests per Secondl
Web Service, Postl Requests per Second
ASP.NET, Application Restartsl
ASP.NET, Workl Process Restarts
ASP.NET, Request Execution Timel
ASP.NET, Request Waitl Time
ASP.NET, Requests Queuedl
ASP.NET Application, Requests/Secl
l ASP.NET Application, Requests Executing
ASP.NET Application Sessionsl Active
4. 中間層應用服務器的性能指標監測
Processor, %Processor Timel
Processor,l %User Time
Processor, % Privileged Timel
Processor, Processor Queuel Length
System, Context Switches per Secondl
Process, Private Bytesl
l Memory, Page Faults/sec
Memory, Available Bytesl
Memory, Pool Pagedl Bytes
Network Interface, bytes total/secl
Network Interface, Outputl Queue Length
Physical Disk, %Disk Timel
Physical Disk, Avg Disk Queuel Length
COM+ Authenticate (by LoadRunner)l
COM+ Authenticate Failed (byl LoadRunner)
COM+ Activation (by LoadRunner)l
COM+ Failed (byl LoadRunner)
COM+ Thread Start (by LoadRunner)l
COM+ Thread Terminatel (by LoadRunner)
Transaction Duration (by LoadRunner)l
Transaction Startl (by LoadRunner)
Transaction Prepared (by LoadRunner)l
Transactionl Aborted (by LoadRunner)
Transaction Commited (by LoadRunner)l
Objectl LifeTime(by LoadRunner)
Object Create (by LoadRunner)l
Object Destroyl (by LoadRunner)
Object Activate (by LoadRunner)l
Object Deactivate (byl LoadRunner)
Disable Commit (by LoadRunner)l
Enable Commit (byl LoadRunner)
Set Complete (by LoadRunner)l
Set Abort (byl LoadRunner)
COM+ Method Duration (by LoadRunner)l
COM+ Method Frequencyl (by LoadRunner)
COM+ Method Failed (by LoadRunner)l
COM+ Methodl Exception (by LoadRunner)
.NET CLR Data, SqlClient, Current # Pooledl Connection
.NET CLR Data, SqlClient, Current # Pooled and Non-pooledl Connection
.NET CLR Memory, Gen 0、1、2 heap sizel
.NET CLR Memory, #l bytes in all Heaps
Distributed Transaction Coordinator,l Transactions/Sec
Distributed Transaction Coordinator, Committedl Transactions
Distributed Transaction Coordinator, Aborted Transactionsl
l Distributed Transaction Coordinator, Active Transactions
Distributedl Transaction Coordinator, Response Time – Average
5. 客戶機的性能指標監測
l Processor, %Processor Time
Process, Private Bytesl
Process, Handlel Counts
Network Interface, bytes total/secl
Network Interface, Outputl Queue Length
Physical Disk, Avg Disk Queue Lengthl
.NET CLR Memory, Genl 0、1、2 heap size
.NET CLR Memory, # bytes in all Heapsl
Number ofl Concurrent Users (NCU)
Request Per Second (RPS)l
Response Timel
l Hits per Second
Throughputl
Pages per Secondl
User-define Datal Point
Time to First Byte (TTFB)l
Time to Last Byte (TTLB)l
Thinkl Time |