WebService接口测试

WebService接口测试WebService的理解WebService就是Web服务的意思,对应的应用层协议为SOAP(相当于HTTP协议),可理解为远程调用技术。 特点:客户端发送的请求主体内容(请求报文)的格式为XML格式接口返回的响应主体内容(响应报文)的格式为XML格式WSDL的介绍就是WebService接口对应的WSDL文件,该文件通过xml格式说明如何调用,可以看作WebService的接口文档(使用说明书…

大家好,又见面了,我是你们的朋友全栈君。

WebService的理解

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

 

特点:

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

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

WSDL的介绍

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

WebService接口测试

SOAP的介绍

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

注册网站会员

WebService接口测试

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

WebService接口测试

JAVA程序测试WebService接口

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

 

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

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

 

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

http://blog.csdn.net/binbinxyz/article/details/8906717

 

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

WebService接口测试

附截图:

WebService接口测试

步骤三、导入相关的jar包

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

http://sxlkk.iteye.com/blog/1944831

 

附截图:

WebService接口测试

步骤四、写一个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程序

附截图:

WebService接口测试

SoapUI工具的介绍

此处省略N个字。

使用SoapUI工具测试WebService接口

步骤一、安装SoapUI

WebService接口测试

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

WebService接口测试

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

WebService接口测试

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

步骤五、发送请求

附截图:

WebService接口测试

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160430.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月16日 上午7:46
下一篇 2022年7月16日 上午7:46


相关推荐

  • memcached 与redis 的区别?

    memcached 与redis 的区别?1 Redis 不仅仅支持简单的 k v 类型的数据 同时还提供 list set zset hash 等数据结构的存储 而 memcache 只支持简单数据类型 需要客户端自己处理复杂对象 2 Redis 支持数据的持久化 可以将内存中的数据保持在磁盘中 重启的时候可以再次加载进行使用 PS 持久化在 rdb aof 3 由于 Memcache 没有持久化机制 因此宕机所有缓存数据失效 Redis 配置为持久化 宕机重启后 将自动加载宕机时刻的数据到缓存系统中 具有更好的灾备机制 4 Memcache 可以

    2026年3月19日
    2
  • COZE工作流实操教程

    COZE工作流实操教程

    2026年3月12日
    2
  • timer定时器用法_定时器怎么调时间

    timer定时器用法_定时器怎么调时间在JDK类库中Timer类主要负责计划任务的功能,也就是在指定的时间开始执行某一个任务。此类也常用来做一下周期性同步工作,代替它的有quartz、SpringTask。Timer类的主要作用是设置计划

    2022年8月3日
    7
  • python检测端口是否被占用_怎么查看端口占用情况

    python检测端口是否被占用_怎么查看端口占用情况开始 gt 运行 gt cmd 或者是 window R 组合键 调出命令窗口 输入命令 netstat ano 列出所有端口的情况 在列表中我们观察被占用的端口 比如是 49157 首先找到它 查看被占用端口对应的 PID 输入命令 netstat aon findstr 49157 回车 记下最后一位数字 即 PID 这里是 2720 继续输入 tasklist findstr 2

    2026年3月18日
    2
  • 模板引擎?看这一篇就懂了

    模板引擎?看这一篇就懂了概念模板引擎可以让 网站 程序实现界面与数据分离 业务代码与逻辑代码的分离 这就大大提升了开发效率 良好的设计也使得代码重用变得更加容易 光看生硬的概念没有用 接下来我来给大家详细解释 这模板引擎究竟是何物 假设现在你打开电脑浏览器 进入某宝的网站 然后输入 笔记本 唰的一下页面上就出现了琳琅满目的商品 让你是应接不暇 然后你又输入了 辣条 一下子页面上又是不一样的商品了 这个时候 疑问就产生了 页面上的这些商品究竟是直接写在页面上的还是实时渲染的呢 毫无疑问 这些展示的商品肯定是实时渲染出

    2026年3月19日
    1
  • String类型转换为Long类型

    String类型转换为Long类型String 类型转换为 Long 类型 返回 Long 包装类型 Long ValueOf String 返回 long 基本数据类型 Long parseLong String

    2026年3月19日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号