测试 SOA 中基于 Human Task 的服务(上)

发表于:2009-3-23 13:26

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:王海艳、杨乐    来源:IBM

分享:

  编写 JUnit 测试用例

  新建一个 JUnit 测试用例(TestCase), 为了使用 Web 服务方式访问 SOA 服务,需要初始化第一步生成的 Web 服务客户端,同时配置第二步定义的 SOAP 消息 Handler 来处理 UsernameToken,初始化过程的代码如下,

  代码二初始化 Web 服务客户端

protected void setUp() throws Exception {
super.setUp();

 IfTaskManagementServiceExport1_IfTaskManagementServiceHttpServiceLocator
 serviceLocator = new
 IfTaskManagementServiceExport1_IfTaskManagementServiceHttpServiceLocator();
 
 // add a message handler to handdler registry
 Map handlerConfig = new HashMap();
 handlerConfig.put("username", "jim");
 handlerConfig.put("password", "123456");
 HandlerInfo handlerInfo = new HandlerInfo(UsernameTokenSigner.class, handlerConfig,
 UsernameTokenSigner.HEADERS);
 QName servicePortQName = (QName) serviceLocator.getPorts().next();
 List list = serviceLocator.getHandlerRegistry().getHandlerChain(servicePortQName);
 list.add(handlerInfo);
 
 this.service = serviceLocator.getTaskManagementWSExport_IfTaskManagementServiceHttpPort(\
 new URL(endpoint));
}

  初始化工作完成以后,就可以使用 Web 服务客户端来方便的访问 SOA 服务了。每一次服务调用都是以初始化过程中指定的用户身份进行的,所以需要保证此用户拥有进行该 Human Task 操作的相应权限。下面的代码片段(代码三),测试了待测试 SOA 服务的一个操作。可以根据实际的测试需求,编写各种测试方法,以保证待测试 SOA 服务的质量。

  代码三测试 SOA 服务

public void testCreateTask() throws Exception {
 String taskId = this.service.createTask("http://soa.ibm.com/HTService/test",
 "SampleHumanTask", null, null, null);
 assertNotNull("failed to create task", taskId);
}

  运行测试用例获取测试报告

  和运行普通的 JUnit 测试用例一样,在 WID 中,右键选中编写好的测试用例,在弹出菜单中选择 Run -> JUnit Test,在运行完后,会显示出类似下图(图四)的测试报告。

  图四测试报告

  

相关阅读:

测试 SOA 中基于 Human Task 的服务(下)

SOA 组合业务服务的自动化测试:第 1 部分

44/4<1234
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号