TPTP 提供了可自动化服务框架,此框架支持从完全不同的环境中提供和使用由 Eclipse 主管的 TPTP 服务。由于这些服务基本上是通过扩展来发布自身的
黑匣组件(具有受支持属性和行为约定的相关规范),因此,有可能创建新的服务提供者来实现同一个服务。这种实现的方法允许在服务使用者与服务提供者之间进行松散的动态绑定。
尽管 TPTP 的服务抽象确实使 TPTP 更接近于在面向服务的体系结构中起作用,但它们并不完全与标准 Web service 抽象相同(它们是更轻量级的、更简单
并且非正式的抽象)。随可自动化服务框架一起引入的概念和抽象与任何面向服务体系结构中的高级抽象内涵相同。
组成 TPTP 的功能部件将以递增方式开发和发布服务,这些服务使 TPTP 平台准备就绪,以从 Eclipse 外部的脚本和任何程序中向平台发出命令。当前,TPTP 测试功能部件提供了测试执行服务,支持以编程方式灵活地执行 TPTP 测试。
可自动化服务框架提供了可以在框架组件之间建立松散耦合的分层体系结构。用于将服务使用者请求传输到服务提供者响应(执行服务)的总线的两端都支持可扩展性。其客户端采用适配器模型(客户机端可以是在 Eclipse 实例中运行的代码,也可以是在 Eclipse 外部运行的代码,例如命令行脚本),服务器端采用服务提供者提供模型(服务器端是提供服务实现的插件所在的 Eclipse 实例)。
可以开发其他自动化客户机适配器以使新的服务使用者范例适应 TPTP 中提供的标准自动化客户机接口。例如,第三方可以开发
Web service 客户机自动化适配器以便能够从标准 Web service 环境中执行 TPTP 可自动化服务,也可以编写
Jython 客户机自动化适配器以支持从 Jython 环境中使用服务。
当新的相容可自动化服务发布时,它们将增大 TPTP Eclipse 实例公开提供的可用服务池,并因此增大可用服务提供者池,这些提供者可以向连接可自动化服务框架的有兴趣使用者提供功能。最终用户可以创建仅通过实现适当的扩展点并至少开发一个 Java 类来提供新服务的插件。因此,分层体系结构和总线性质
决定了此服务是从使用者环境中的 Ant 脚本、shell 脚本、Java 程序以及任何其他已安装的客户机适配器中自动提供的。
轻量级自动化客户机组件提供了一组标准的服务接口来供客户机适配器使用,并提供了适合于方案的
Eclipse 启动策略。当前提供了两种启动和执行策略,一种用于进程内的服务使用,另一种用于进程外的服务使用(典型的策略是进程外策略,此策略为特定 Eclipse 实例外部的客户机提供服务)。如果要在调用者所在 Eclipse 实例中执行服务,请使用进程内策略。
轻量级组件与重量级组件进行交互(“重量级”表示在更大程度上依赖于 Eclipse,并依赖于其他要从中抽取外部自动化客户机组件的库)。轻量级组件仅与特定的 Eclipse 实例耦合,这是通过自动化客户机组件接口上的可设置字符串标识实现的。Eclipse 实例中的自动化服务器(也称为重量级内部组件或代理)接收来自轻量级自动化客户机组件的入局通信,并安排对正确服务提供者(也称为可自动化服务)的调用。自动化服务器定义了一些简单的扩展点,这些扩展点允许在所请求的服务与服务于该请求的 Java 类之间进行间接通信。
相关任务
从脚本和应用程序中启动测试
执行测试执行服务
相关参考
受支持的测试执行服务属性
(C) Copyright IBM Corporation 2000, 2006. All Rights Reserved.