📅  最后修改于: 2020-11-13 05:49:08             🧑  作者: Mango
在本章中,我们将学习如何创建测试计划以测试WebService。为了进行测试,我们创建了一个简单的Web服务项目,并将其部署在本地的Tomcat服务器上。
为了创建一个Web服务项目,我们使用了Eclipse IDE。首先,在com.tutorialspoint.ws包下编写Service Endpoint Interface HelloWorld 。 HelloWorld.java的内容如下-
package com.tutorialspoint.ws;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;
//Service Endpoint Interface
@WebService
@SOAPBinding(style = Style.RPC)
public interface HelloWorld {
@WebMethod String getHelloWorldMessage(String string);
}
该服务具有方法getHelloWorldMessage ,该方法带有String参数。
接下来,在包com.tutorialspoint.ws下创建实现类HelloWorldImpl.java 。
package com.tutorialspoint.ws;
import javax.jws.WebService;
@WebService(endpointInterface="com.tutorialspoint.ws.HelloWorld")
public class HelloWorldImpl implements HelloWorld {
@Override
public String getHelloWorldMessage(String myName) {
return("Hello "+myName+" to JAX WS world");
}
}
现在,让我们通过创建Endpoint发布者在本地发布此Web服务,并将该服务公开在服务器上。
publish方法采用两个参数-
端点URL字符串。
实现者对象,在本例中为HelloWorld实现类,在上面参数中提到的URL所标识的端点处作为Web服务公开。
HelloWorldPublisher.java的内容如下-
package com.tutorialspoint.endpoint;
import javax.xml.ws.Endpoint;
import com.tutorialspoint.ws.HelloWorldImpl;
public class HelloWorldPublisher {
public static void main(String[] args) {
Endpoint.publish("http://localhost:9000/ws/hello", new HelloWorldImpl());
}
}
修改web.xml内容,如下所示-
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
hello
com.sun.xml.ws.transport.http.servlet.WSServlet
1
hello
/hello
120
要将这个应用程序部署为Web服务,我们需要另一个配置文件sun-jaxws.xml 。该文件的内容如下-
现在所有文件都准备好了,目录结构将如下图所示:
现在创建此应用程序的WAR文件。
选择项目→右键单击→导出→WAR文件。
将其另存为Tomcat服务器的webapps文件夹下的hello.war文件。
现在启动Tomcat服务器。
服务器启动后,您应该可以使用URL访问Web服务-http:// localhost:8080 / hello / hello
现在,让我们创建一个测试计划以测试上述Web服务。
通过单击/home/manisha/apache-jmeter2.9/bin/jmeter.sh打开JMeter窗口。
单击测试计划节点。
将此测试计划节点重命名为WebserviceTest。
添加一个线程组,该线程组是所有其他元素(如采样器,控制器和侦听器)的占位符。
右键单击WebserviceTest(我们的测试计划)→添加→线程(用户)→线程组。将在“测试计划(WebserviceTest)”节点下添加线程组。
接下来,让我们修改线程组的默认属性以适合我们的测试。以下属性已更改-
名称-网络服务用户
线程数(用户) -2
加速周期-保留默认值0秒。
循环计数-2
现在我们已经定义了用户,是时候定义他们将要执行的任务了。
我们将添加SOAP / XML-RPC Request元素-
右键单击鼠标以获取“添加”菜单。
选择添加→采样器→SOAP / XML-RPC请求。
在树中选择SOAP / XML-RPC Request元素
如下图所示,编辑以下属性-
在此元素中输入以下详细信息-
名称-SOAP / XML-RPC请求
网址-http:// localhost:8080 / hello / hello?wsdl
Soap / XML-RPC数据-输入以下内容
Manisha
您需要添加到测试计划中的最后一个元素是侦听器。该元素负责将HTTP请求的所有结果存储在文件中,并提供数据的可视模型。
选择Web服务用户元素。
通过选择添加→侦听器→视图结果树来添加视图结果树侦听器。
现在,将以上测试计划另存为test_webservice.jmx 。使用“运行”→“开始”选项执行此测试计划。
在侦听器中可以看到以下输出。
在上一个图像中,您可以看到响应消息“ Hello Manisha到JAX WS world”。