A TPTP faculta uma estrutura automatizável do serviço que apresenta o suporte
para o fornecimento e consumo dos serviços TPTP alojados no Eclipse de
ambientes díspares.
Dado que estes serviços são fundamentalmente componentes de caixas negras, que
se publicam através de extensões (com uma especificação associada de
propriedades suportadas e contracto comportamental), é possível criar um novo
fornecedor de serviços implementando o mesmo serviço.
Esta abordagem implementada permite uma associação solta e dinâmica entre o consumidor e o fornecedor de serviços.
As abstracções de serviço da TPTP não são rigorosamente as mesmas de um serviço Web (são muito mais leves, simples e informais), apesar de darem a
possibilidade de a TPTP desempenhar uma função numa arquitectura orientada pelo
serviço.
Os conceitos e abstracções introduzidos com a estrutura automatizável de
serviços são sinónimos da abstracção de alto nível em qualquer arquitectura orientada pelo serviço.
As funções que constituem a TPTP irão desenvolver e publicar de forma
incremental os serviços que preparam a plataforma TPTP para ser comandada a
partir de scripts e de programas arbitrários fora do Eclipse. As funções de
teste da TPTP facultam um serviço de execução de teste para a execução flexível
de testes TPTP programaticamente.
A estrutura automatizável de serviços tem uma arquitectura em camadas que
activa a acoplagem solta entre os componentes da estrutura.
O bus que transporta os pedidos de serviço do consumidor para as respostas do
fornecedor de serviços (a execução de serviços) permite extensibilidade para
cada extremidade com um modelo adaptador na extremidade do cliente (a
extremidade do cliente pode executar um código dentro de uma instância do
Eclipse ou fora de uma instância do Eclipse, no caso de scripts da linha de
comandos) e um modelo de oferta de um fornecedor de serviços na extremidade do
servidor(a extremidade do servidor é a instância do Eclipse que aloja os
plug-ins que facultam as implementações de serviço).
Os adaptadores adicionais de automatização do cliente podem ser desenvolvidos
para adaptar novos paradigmas do consumidor do serviço às interfaces padrão de
automatização do cliente facultadas na TPTP.
Por exemplo, um adaptador de um serviço Web de automatização do cliente pode
ser desenvolvido por terceiros, permitindo que serviços automatizáveis da TPTP
sejam executados de dentro de um ambiente padrão de serviços Web ou um
adaptador de automatização do cliente Jython pode ser gravado para apoiar a
utilização de serviços de um ambiente Jython.
À medida que novos serviços de conformidade automatizáveis são publicados,
estes aumentam a área de serviços disponíveis publicamente de uma instância do
Eclipse TPTP e, por conseguinte, os fornecedores de serviços disponíveis que
facultam funcionalidade para consumidores interessados que estejam a instalar a estrutura automatizável do serviço.
Um utilizador final pode criar um plug-in que faculte um novo serviço simplesmente ao
implementar pontos de extensão adequados e ao desenvolver pelo menos uma classe Java).
Por conseguinte, este serviço é disponibilizado automaticamente a partir de
scripts ant, de procedimentos base, de programas Java e de qualquer outro
adaptador instalado pelo cliente no ambiente do consumidor graças à
arquitectura em camadas e à natureza do bus.
O componente leve de automatização do cliente faculta um conjunto padrão de
interfaces de serviço para ser utilizado pelos adaptadores do cliente, assim
como uma estratégia de lançamento do Eclipse apropriada para o cenário.
São oferecidas actualmente duas estratégias de lançamento e execução, uma para a
utilização do serviço em curso e a outra para a utilização do serviço que
não está em curso (a estratégia que não está em curso é a estratégia
comum, que serve os clientes que estejam fora de uma instância do Eclipse).
A estratégia em curso é utilizada em situações em que é desejável que o
serviço seja executado na mesma instância do Eclipse do chamador.
O componente leve interage com o componente pesado (pesado porque tem uma maior
dependência no Eclipse e, por conseguinte, dependências adicionais na
biblioteca da qual o componente externo de automatização do cliente está abstraído).
A única acoplagem do componente leve com uma determinada instância do Eclipse
dá-se através de um cartão de identificação de cadeia que são definidas na instância do
componente de automatização do cliente.
O servidor de automatização alojado dentro de uma instância do Eclipse (também
conhecido como componente ou corretor interno pesado) recebe comunicação de
entrada do componente leve de automatização do cliente e empacota a chamada
para o fornecedor de serviços adequado (também conhecido como serviço automatizável).
O servido de automatização define alguns pontos de extensão simples que
permitem a indirecção entre o serviço pedido e a classe Java que serve o
pedido.
Tarefas relacionadas
Iniciar
testes de scripts e aplicações
Executar o serviço
de execução de testes
Referência relacionada
Propriedade
do serviço de execução de testes suportados
(C) Copyright IBM Corporation 2000, 2006. Todos os direitos reservados.