1、soapUI簡介html
SOAP:java
WebService經過Http協議發送請求和接收結果時,發送的請求內容和結果內容都採用XML格式封裝,並增長了一些特定的HTTP消息頭,以說明HTTP消息頭的內容格式,這些特定的HTTP消息頭和XML內容格式就是SOAP協議。SOAP提供了標準的RPC方法來調用WebService。web
SOAP協議 = HTTP協議 + XML數據格式服務器
SOAP協議定義了SOAP消息的格式,SOAP協議是基於HTTP協議的,SOAP也是基於XML和XSD的,XML是SOAP的數據編碼方式。打個比喻:HTTP就是普通公路,XML就是中間的綠色隔離帶和兩邊的防禦欄,SOAP就是普通公路通過加隔離帶和防禦欄改造過的高速公路。網絡
WSDL:框架
比如咱們去商店買東西,首先要知道商店裏有什麼東西可買,而後再來購買,商家的作法就是張貼廣告海報。 WebService也同樣,WebService客戶端要調用一個WebService服務,首先要有知道這個服務的地址在哪,以及這個服務裏有什麼方法能夠調用,因此,WebService務器端首先要經過一個WSDL文件來講明本身家裏有啥服務能夠對外調用,服務是什麼(服務中有哪些方法,方法接受的參數是什麼,返回值是什麼),服務的網絡地址用哪一個url地址表示,服務經過什麼方式來調用。函數
WSDL(Web Services Description Language)就是這樣一個基於XML的語言,用於描述Web Service及其函數、參數和返回值。它是WebService客戶端和服務器端都能理解的標準格式。由於是基於XML的,因此WSDL既是機器可閱讀的,又是人可閱讀的,這將是一個很大的好處。一些最新的開發工具既能根據你的Web service生成WSDL文檔,又能導入WSDL文檔,生成調用相應WebService的代理類代碼。工具
WSDL文件保存在Web服務器上,經過一個url地址就能夠訪問到它。客戶端要調用一個WebService服務以前,要知道該服務的WSDL文件的地址。WebService服務提供商能夠經過兩種方式來暴露它的WSDL文件地址:1.註冊到UDDI服務器,以便被人查找;2.直接告訴給客戶端調用者。性能
WebService的工做調用原理:對客戶端而言,咱們給這各種WebService客戶端API傳遞wsdl文件的url地址,這些API就會建立出底層的代理類,我調用這些代理,就能夠訪問到webservice服務。代理類把客戶端的方法調用變成soap格式的請求數據再經過HTTP協議發出去,並把接收到的soap數據變成返回值返回。對服務端而言,各種WebService框架的本質就是一個大大的Servlet,當遠程調用客戶端給它經過http協議發送過來soap格式的請求數據時,它分析這個數據,就知道要調用哪一個java類的哪一個方法,因而去查找或建立這個對象,並調用其方法,再把方法返回的結果包裝成soap格式的數據,經過http響應消息回給客戶端。開發工具
SoapUI是專門針對webservice接口的測試工具,在對同一個webservice接口進行測試時,SoaqUI表現出來的性能更優越、更真實、更接近地反映接口的性能指標,對於SoapUI來講,提供的結果數據分析不如LR那麼詳細與全面。
2、安裝
在bin下執行
若是沒有成功,就用超級管理員權限。
Demo
首先新建一個SoapUI Project,在Initial WSDL/WADL中輸入wsdl的地址
Project創建好後,SoapUI會根據WSDL的格式生成左邊的列表樹,包括CUX_0_WS_SERVER_PRG_Binding爲WSDL Binding,INVOKEFMSWS爲Binding中的Operation。雙擊Request1就能看到Soap請求報文的內容。
在請求報文中填寫必要的請求信息,並在左下角的Request Properies中輸入用戶名,密碼及WSS-Pasword Type,再點擊綠色的運行按鈕,就能在右側生成Soap響應報文。
只是對SoapUI 作了簡單的介紹,主要用其來查看web service提供的接口,以及返回的結果,SoapUI的功能遠不止這些,其能夠對web service進行功能上和性能上的測試。
SoapUI的參數說明:http://www.soapui.org/Working-with-soapUI/preferences.html
進一步瞭解能夠閱讀:http://www.51testing.com/ddimg/uploadsoft/20100204/SoapUI.pdf
另外分享幾個公開的Webservice站點,你能夠隨便招幾個服務來測試
http://www.webservicex.net/WS/wscatlist.aspx
http://www.service-repository.com/