達暉資訊 - 2014 教育訓練 - 如何進行負載測試

16
2014 教育訓練系列課程 如何進負載測試 達暉資訊 Allen Hsieh

Upload: allen-hsieh

Post on 26-Jun-2015

400 views

Category:

Technology


3 download

DESCRIPTION

如何進行負載測試

TRANSCRIPT

Page 1: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

2014 教育訓練系列課程 如何進⾏行負載測試

!達暉資訊 Allen Hsieh

Page 2: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

在過去的⼯工作經驗中,你做過或聽過哪些軟體測試?

Page 3: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

效能測試 Performance Testing

負載測試 Load Testing

壓力測試 Stress Testing

功能測試

Functional Testing

非功能測試 Non-Functional Testing

安全測試

Security Testing

相容性測試 Compatibility Testing

復原測試 Recover Testing

備源測試 Recover Testing

擴充性測試 Scalability Testing

可用性測試

Availability Testing

單元測試 Unit Testing

整合性測試 Integration Testing

使用者接受測試

User Acceptance Testing

Page 4: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

效能測試 Performance Testing

負載測試 Load Testing

壓⼒力測試 Stress Testing

這三種測試有什麼差異?

Page 5: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

效能測試 Performance Testing

⺫⽬目的:

1. 消除效能瓶頸,讓系統達到允許的回應時間。

2. 透過謹慎控制的量測,從不同⾓角度取得系統效

能數據。

Page 6: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

負載測試 Load Testing

⺫⽬目的:

1. 透過「增加」或「持續」系統負擔,來強迫系

統暴露潛在的問題。

2. 「驗證」並「建⽴立」系統效能數據標準(容量、

壽命、耐⼒力)。

Page 7: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

壓⼒力測試 Stress Testing

⺫⽬目的:

1. 透過「超出負荷」或「移除資源」,來嘗試使

系統失效,並觀察系統如何反應失效狀況。

2. 排除狀況或復原資源後,系統是否能正常復原。

Page 8: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

效能測試 Performance Testing

負載測試 Load Testing

壓⼒力測試 Stress Testing

應該先做哪⼀一個測試 理由為何?

Page 9: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

計劃 Planning

準備 Preparation

執⾏行 Execution

教調 Tuning

提出報告建議事項

Test Team

Develop Team

Page 10: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試
Page 11: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

What is JMeter• A load and performance testing tool from

Apache. • Open source software. • 100% pure Java desktop application. • The Protocols supported by JMeter are:

• HTTP, HTTPS • SOAP • FTP • JDBC • LDAP • JMS • SMTP(S), POP3(S) and IMAP(S) • TCP

Page 12: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

Live Demo

Page 13: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

負載測試 Load Testing

⺫⽬目的:

1. 透過「增加」或「持續」系統負擔,來強迫系統暴露潛在的

問題。

2. 「驗證」並「建⽴立」系統效能數據標準(容量、壽命、耐

⼒力)。

範例:

1. 模擬⼤大量的使⽤用者存取系統。 2. 資料庫模擬⼤大量資料查詢或存取。 3. 上傳⼤大量或⼤大容量檔案。

Page 14: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

效能測試 Performance Testing

⺫⽬目的:

1. 消除效能瓶頸,讓系統達到允許的回應時間。

2. 透過謹慎控制的量測,從不同⾓角度取得系統效能數據。

範例:

1. 透過 Profiler ⼯工具查出程式效能瓶頸。 2. 透過資料庫監控與教調⼯工具來優化sql指令。 3. 透過OS 指令或程式來監控硬體資源(like CPU, RAM,

swap, I/O) 4. 透過軟體或指令進⾏行網路封包探測或狀況監控。

Page 15: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試

壓⼒力測試 Stress Testing

⺫⽬目的:

1. 透過「超出負荷」或「移除資源」,來嘗試使系統失效,並

觀察系統如何反應失效狀況。

2. 排除狀況或復原資源後,系統是否能正常復原。

範例:

1. 加倍線上使⽤用者數量。 2. 隨機關閉網路設備。 3. 關閉資料庫後再開啟。 4. 執⾏行耗盡資源的程序。 5. 在系統執⾏行時重建硬碟陣列。

Page 16: 達暉資訊 - 2014 教育訓練 - 如何進行負載測試