7.4 测试Java客户端调用
在Web Service测试时,需要考虑到客户端调用方式的兼容性。不同客户端调用Web Service方式存在很大差异,本章将会介绍Java和.NET客户端的调用方式。这里先介绍使用XFire通过代理调用Web Service接口进行测试。
7.4.1 无WS-Security的客户端调用
代理调用的方式要求有接口类。接口类可以从WSDL直接生成,也可以手动编写。在支持Web Service的Eclipse中,通过菜单“File”→“New”→“Other”→“Web Service Client”可以从指定的WSDL文件中生成代理相关的代码,我们只需要保留其中接口类的代码。http://10.0.4.138:1688/webservice/AppConsumeService?wsdl提供的服务为例,首先生成代理类,如图7.5所示。
图7.5 Eclipse中根据WSDL生成代理
单击“Finish”,生成的代理类如图7.6所示。
图7.6 生成代理类
生成代理类的包路径com.test.api.account需要根据WSDL命名空间的逆序命名。接下来我们只需要保留AppConsumeServicePortType.java这个接口类(代码7.9)。当然这个接口类也完全可以自己实现。
注意:自己写接口类时要保证包的路径和WSDL定义中的一致。如果接口中有复杂对象,还需要同时定义复杂对象类,同样包的路径要一致。
代码7.9 AppConsumeServicePortType.java
01 /** 02 * AppConsumeServicePortType.java 03 * 04 * This file was auto-generated from WSDL 05 * by the Apache Axis 1.3 Oct 05, 2005 (05:23:37 EDT) WSDL2Java emitter. 06 */ 07 08 package com.test.api.account; 09 10 public interface AppConsumeServicePortType extends java.rmi.Remote { 11 public java.lang.String checkBalance(java.lang.String param0, java. lang. String param1, java.lang.Double param2) throws java.rmi. RemoteException; 12 } |
连载一 连载二 连载三 连载四 连载五 连载六 连载七 连载八 连载九 连载十
本文选自:《51Testing软件测试作品系列》之三的《互联网单元测试及实践》,本站经电子工业出版社和作者的授权,近期将进行部分章节的连载,敬请期待!
版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们