基于脚本的SOA动态测试平台生成技术解析
1. G2对插件实现的支持
G2为新插件的实现提供了基础类,该基础类可执行安装、部署以及远程实例间通信等基本任务。这使得开发者能够将精力集中在插件的主要功能上,而无需过多关注这些基础操作。
2. 利用Groovy特性
Groovy是一种用于Java虚拟机的动态编程语言,具有动态类型、闭包和元编程支持等现代特性,语法简洁,可作为易读的脚本语言。G2在多个方面利用了Groovy的特性:
- 模型类型扩展 :G2使用Groovy的动态Expando类型作为模型类型的基类。这允许在运行时扩展模型(即生成的测试平台)并观察更改,便于实现前端/后端的自动同步。插件开发者还可以通过拦截模型操作请求,自定义处理方式(如记录所有操作),并限制模型的可扩展性。
- 构建嵌套数据结构 :模型对象在内部以灵活的哈希映射形式实现,整个测试平台模型通过聚合这些对象构建而成。为了简化复杂测试平台模型对象的聚合过程,G2使用了Groovy的Builder支持,以直观的方式创建嵌套数据结构。以下是使用Builder创建Web服务模型的示例:
// hash map-based creation of web service model
def s1 = webservice.create("TestService")
s1.binding = "doc,lit"
s1.tags += "test"
def op = wsoperation.create("SayHi")
op.paramTyp
超级会员免费看
订阅专栏 解锁全文
942

被折叠的 条评论
为什么被折叠?



