Web service 概念html
Web service使用與平臺和編程語言無關的方式進行通信的一項技術, web service 是一個接口, 他描述了一組能夠在網絡上經過標準的XML消息傳遞訪問的操做,它基於xml語言協議來描述要執行的操做或者要與另一個web 服務交換數據, 一組以web服務在面向服務體系結構中定義的web應用程序.java
能夠簡單的理解爲web service是一個SOA(面向服務的編程)架構, 它不依賴於語言, 也不依賴於平臺, 能夠實現不一樣語言之間的通信和相互調用.SOAP(簡單對象訪問協議) 是xml web service的通信協議. 當用戶經過UDDI找到WSDL(Web Service Description Language)文檔後,經過SOAP調用創建的web service的一個或者多個操做.SOAP是xml文檔形式的調用方法規範, 能夠支持不一樣的底層接口.web
Web service 接口準備 若是有現成的webService請忽略這步正則表達式
使用Eclipse或者Intellij等IDE工具,使用java語言實現一個簡單的web服務.數據庫
1.在Intellij中File->New->Project中選擇使用Maven來建立項目,輸入項目名稱便可建立項目,咱們使用WebService來命名項目,項目建立完成後在其目錄中會有一個文件pom.xml,會自動加入以下配置文件:編程
<groupId>webService</groupId>
<artifactId>webService</artifactId>
<version>1.0-SNAPSHOT</version>瀏覽器
2.在java目錄下新建一個java class, 定義爲一個webService 接口,只有方法,沒有具體實現.微信
import javax.jws.WebMethod;
@javax.jws.WebService
public interface WebService {
@WebMethod
String sayHello(String name);
}
3.再同目錄下新建一個java class, 用來實現定義的webService接口, 並重載接口中定義方法.網絡
@javax.jws.WebService
public class WebServiceImple implements WebService {
public String sayHello(String name){
System.out.println("請求成功了");
String a= name+"Hello world 你很厲害, 恭喜你!";
return a;
}
4.再新建一個java class, 用來啓動發佈咱們的webService應用架構
import javax.xml.ws.Endpoint;
public class WebServicePublish {
public static void main(String[] args) {
String address="http://localhost:8989/WS_Server/Webservice";
Endpoint.publish(address,new WebServiceImple());
System.out.println("服務端發佈成功了!");
}
}
5. 發佈應用
右鍵選擇執行便可發佈應用程序.
若是正常便可在控制檯上看到下列信息:
/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/bin/java -Dfile.encoding=UTF-8 服務端發佈成功了!
恭喜你發佈成功了,接下來用瀏覽器直接訪問
http://localhost:8989/WS_Server/Webservice?wsdl
看到一堆xml說明webService能夠正常訪問了.
Web service 接口測試
webService支持相對有好的工具SoapUI, 它是針對soap協議而生, 咱們打開SoapUI應用.
在SoapUI 的工具欄中咱們選擇soap->Create a New Soap Project, 在彈框中咱們輸入Project name 和WSDL Link
Project Name:推薦名字根據項目名稱取
Initial WSDL:被測的wsdl link
Create Requests: 默認選中
Create TestSuite: 測試套件能夠這裏勾選建立,也能夠後續自行建立.
點擊OK 便可.
SoapUI根據link自動導入全部接口信息
能夠看到SayHello使咱們在Intellij中實現的接口方法.
咱們在SoapUI的請求中, 在參數裏輸入相關信息,驗證接口
查驗接口request和Response
同時查看Intellij IDE是否有報錯信息, 控制檯顯示請求成功
從Response中能夠判斷咱們的返回和IDE中定義的是相符的.
增長TestSuite
增長TestSuite和TestCase的意義在於soap 接口測試爲後續自動化測試提供基礎腳本和迴歸驗證.
在webServiceTest右鍵New TestSuite
新建一個TestCase, 在Suite 右鍵New TestCase
最後一步將接口添加到TestCase, 右鍵接口SayHello選擇Add to TestCase, 而後選擇要添加Suite和TestCase,便可將接口添加進入Step中
這樣SayHello 接口就被添加到testCase中了,仍是很是方便的., 這時候能夠給接口SayHello添加相關的斷言.
今日推薦閱讀文章精選推薦
諮詢工做加微信
掃描二維碼
歡迎自薦和推薦, 須要的微信推送簡歷!
請猛戳下面二維碼瞭解更多