Automatic Conformance Testing of Web Services

本文工作:
SOA定义三种角色支持Web Service的发布和使用,分别是:provider,requestor和discovery service。provider是Web Service的提供者,requestor是Web Service的请求者,discovery service负责解析requestor的服务请求,查询复合需求的Web Service返回给requestor。
provider以XML文档的形式,描述服务的接口以及操作,discovery service依据这些信息查找复合需求的Web Service。然而,有些时候可能出现Web Service的功能实现与描述不符的情况,因此discovery service需要在注册Web Service之前,对Web Service的功能实现进行测试。
本文则设计了一套Conformance Testing方法,用于测试Web Service的功能实现,以验证是否与静态的功能描述相一致。

这篇文章与Security Policy测试无关,而是对Web Service的描述和实现一致性的测试,但是我想从中找到可以借鉴之处。主要关注两个方面:
第一,作者如何描述Web Service的行为(这可以对应到Security Policy中对规则的描述);
第二,如何从行为描述生成测试(这对应到从Security Policy描述生成测试);

对于第一个问题,作者采用Graph transformation描述Web Service的行为。所谓Graph transformation即用图形化的方法描述行为,是相对逻辑或代数的表达形式而言的,优点是直观并且容易用UML等建模语言描述。本文中作者使用Kaplan提出的Δ-grammars标记表达Graph transformation(简单的调研了下Δ-grammars,感觉我们不大可能用到,因此没有深入研究)。

对于第二个问题,作者采用partition testing的方法,从Web Service的静态功能描述(WSDL)生成测试用例。WSDL定义了Web Service的输入参数以及某一个功能对应的input domain,因而借鉴domain-based的方法,可以生成能够触发每一个功能的测试输入。

之后将生成的测试用例代入Web Service执行,比较Graph transformation描述的Web Service行为与实际运行的行为是否一致,以此判定Web Service是否完全实现了声明的功能。



本文贡献:
1、提出了观点:discovery service注册Web Service之前,要对Web Service的功能进行测试,以检测是否真正实现了声明的功能;
2、基于Δ-grammars对Web Service进行行为描述,作为测试的比对标准;
3、将partition testing方法引入到Web Service测试中,基于domain-based方法生成测试用例。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值