WebService接口测试

WebService的理解

WebService就是Web服务的意思,对应的应用层协议为SOAP(相当于HTTP协议),可理解为远程调用技术。

特点:

客户端发送的请求主体内容(请求报文)的格式为XML格式

接口返回的响应主体内容(响应报文)的格式为XML格式

WSDL的介绍

就是WebService接口对应的WSDL文件,该文件通过xml格式说明如何调用,可以看作WebService的接口文档(使用说明书)。比如:

SOAP的介绍

Soap就是通信协议,该协议是基于XML的数据结构和超文本传输协议(HTTP)的。

注册网站会员

开通天气查询WebService接口的使用权限

JAVA程序测试WebService接口

这里的Java程序实际上就是一个WebService客户端而已。

步骤一、下载天气查询WebService接口WSDL文件

下载地址为:http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl

注意:下载好后,该文件需要更改的。如何修改请参考如下文档:

webservice客户端异常( undefinedelement declaration 's:schema')_binbinxyz的博客-CSDN博客

步骤二、根据WebService接口的WSDL文件在本地生成对应的JAVA代码

附截图:

步骤三、导入相关的jar包

jar包真的比较多。可以参考如下文档:

CXF开发webservice需要的最少jar包,CXF发布和调用客户端代码 - 鬼烧java - ITeye博客

附截图:

步骤四、写一个JAVA客户端测试该接口的调用

这里的测试代码比较简单,没有调JUnit框架的验证方法和hamcrest框架的匹配方法。

代码如下:

package day02;

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.junit.Test;
import cn.com.webxml.ArrayOfString;
import cn.com.webxml.WeatherWSSoap;

public class WeatherTest2 {
 @Test
 publicvoid test(){
    //
    JaxWsProxyFactoryBean bean = newJaxWsProxyFactoryBean();
    //
    bean.setAddress("http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl");
    //
    bean.setServiceClass(WeatherWSSoap.class);
    //
    WeatherWSSoap service = (WeatherWSSoap)bean.create();

    ArrayOfString s = service.getWeather("上海", "918139fc750c4dc58932179efc8d378b");
    //
    System.out.println(s.getString());
    }
}

步骤五、运行该JAVA程序

附截图:

SoapUI工具的介绍

此处省略N个字。

使用SoapUI工具测试WebService接口

步骤一、安装SoapUI

步骤二、创建一个空的工程

步骤三、选中该工程,导入WSDL

步骤四、打开getWeather的请求报文,修改citycode和userid这两个参数

步骤五、发送请求

附截图:

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-17 08:52:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-17 08:52:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-17 08:52:03       82 阅读
  4. Python语言-面向对象

    2024-02-17 08:52:03       91 阅读

热门阅读

  1. transformer的原理

    2024-02-17 08:52:03       54 阅读
  2. Python循环语句——continue和break

    2024-02-17 08:52:03       47 阅读
  3. 【图论经典题目讲解】洛谷 P2371 墨墨的等式

    2024-02-17 08:52:03       57 阅读
  4. 紫微斗数全书卷一斗数太微赋

    2024-02-17 08:52:03       50 阅读