啟動 SOAP 服務測試
當準備好我們的測試計劃之后可以啟動執行壓力測試了,為了記錄測試結果和信息,要增加 Listener 來完成這個任務。JMeter 提供了可視化的界面以及統計報表來供我們選擇。這里我們使用表格(Summary Report)的形式來查看和分析測試結果。
你可以通過下面的步驟來給每個 Group 增加 Summary Report 監視器 :
1. 選中 Test Plan 中要添加 Listener 的 Group 節點,這里我們選擇 SOAP Over JMS Group。
2. 右擊選擇 Add-->Listener-->Summary Report, 界面右邊會相應的出現我們選擇的 Listener 的設置信息。
在經過一系列工作之后,已經完成了整個 Test Plan,現在可以選擇 JMeter 菜單 run-->start 來啟動我們的壓力測試了。下圖是運行過程中測試統計數據的實時跟新信息。為了增加請求負載和獲得更有價值的數據,我們可以更改線程數、等待時間和循環次數。
圖 5. 基于吞吐量的測試結果報表(Summary Report)
獲得的經驗
總結:
使用 JMeter 來作為測試工具對 SOAP 協議的服務進行壓力和系統測試是一個很好選擇,選擇 JMeter 來進行 SOAP 測試具有以下顯著的優點:首先 JMeter 提供了強大全面的 SOAP 請求 / 接收以及監視功能,允許你執行、捕獲在客戶端和服務器端的 SOAP 流量分析。其次,可以使用 JMeter 可以設計出高效、易維護的測試用例甚至測試計劃。后,我們可以選擇 JMeter 提供的符合我們情況的結果 Listener,并且可以從這些 Listener 中很容易的分析出系統或者是服務存在的問題和瓶頸。總體上講,我們在 JMeter 測試框架中構建的 SOAP 測試計劃很好的完成了對 SOAP 協議的系統測試。下面詳細列出了我們在本次測試過程中獲得的技巧以及經驗。
測試工具的選擇
測試工具在軟件和產品測試中是必不可少的,包括系統測試,壓力測試,性能測試以及功能測試。它也會與要測試的產品,測試的領域以及測試的重點有很大的關系。因此,選擇一款合適的測試工具對高效的完成測試是至關重要的。
設計高效的測試計劃
一個高效的測試用例集可以快速的診斷出系統的性能瓶頸。 為此應該全面的分析了解要測試系統的架構與應用,盡量避免盲目或者重復的測試用例,終來構建效率盡可能高的測試用例集。
盡量全面的系統監控
軟件缺陷和系統性能瓶頸的診斷可能會需要各個方面的檢測數據,它們對問題的解決會提供很大的幫助,因此測試過程中應該有全面的系統監控,包括服務器的各項數據(CPU,I/O,MEM), 后臺數據庫的各項數據,相應時間以及網絡流量等。
關注 SOAP 請求的超時(Timeout)
基于 SOAP 協議的請求,無論是 SOAP Over HTTP 還是 SOAP Over JMS 都會有請求超時(Timeout),引起請求超時的原因可能是多方面的(服務器的響應速度,效率,網絡帶寬等),合理的分析以及設置請求超時能更準確的掌握產品的性能情況。