效能測試:[4]Soap?

越來越多的專案採用http和web service 協議。很多同學都用過SoapUi來做一些功能、效能以及自動化方面的工作,soap Ui能完成什麼任務都很清晰。把這兩天一個專案中用到的內容做下簡單整理。

工具/原料

SoapUI

方法/步驟

Soap Ui 能做什麼?

在web service協議中充當客戶端,模擬客戶端向server發起業務請求。在web service協議中充當服務端,根據請求的內容,返回不同的應答,完成mock功能。在web service協議中充當客戶端,完成壓力測試。

Soap Ui在具體專案中的使用場景?

在DCD專案中,提供給其他廠商的介面,是通過web service協議完成,在其中可以根據介面模擬其他廠商程式,進行介面測試即完成上面的第一條工作。在公有云專案中,公有云平臺呼叫第三方的web service進行資源的申請和管理工作,可以使用Soap UI充當server,完成service mock, 即上面的第二條工作。

Soap Ui 具體如何使用?

充當客戶端: 見部門的培訓文件,這個大家都懂的。

充當服務端:完成mock功能。主要完成功能如下,能夠根據請求資料的不同,進行不同的應答。能夠完成所有異常測試的模擬。

建立mock service

效能測試:[4]Soap UI 在測試中的使用

效能測試:[4]Soap UI 在測試中的使用

效能測試:[4]Soap UI 在測試中的使用

效能測試:[4]Soap UI 在測試中的使用

效能測試:[4]Soap UI 在測試中的使用

最核心的就是通過groovy 的script,來完成應答的選擇和修改工作,具體詳細可以參見soapui的官方文件。def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context )def requsetHolder = groovyUtils.getXmlHolder( mockRequest.requestContent )

def arg=requsetHolder["//VMID"]

if (arg==”1111″)return “Response 1″if (arg==”2222″)return “MockResponse 2″

思考

1、測試需要掌握的知識很多,如groovy,測試人員需要能夠快速的掌握一門技術,完成工作。

2、關於mock,目前web service協議通過soapui能夠完成mock任務。那對於其他協議型別如何快速完成?自己編寫or 尋找開源專案?

裡面具體例項來源於yangyh同學,非常感謝她分享了她們專案中用到的工具。

注意事項

SoapUI

功能, 專案, 任務, 效能, 協議,
相關問題答案