TPTP har et automatiserbart tjenesterammeverk med støtte for forsyning og bruk av TPTP-tjenester som Eclipse
er vert for, fra ulike miljøer. Ettersom disse tjenestene i bunn og grunn er ferdsskriverkomponenter som publiseres
via utvidelser (med en tilknyttet spesifikasjon av støttede egenskaper og en virkemåtekontrakt), er det mulig å
opprette en ny tjenesteleverandør som implementerer den samme tjenesten. Denne implementerte tilnærmingen gjør
det mulig med en løs og dynamisk binding mellom den som bruker, og den som leverer, tjenesten.
TPTPs tjensteabstraksjoner er ikke strengt tatt de samme som standard web-tjenesteabstraksjoner (de veier mindre, er
enklere og mer uformelle), selv om de gjør det mer sannsynlig at TPTP spiller en rolle i en tjenesteorientert
arkitektur. Begrepene og abstraksjonene som introduseres med det automatiserbare tjenesterammeverket, er synonyme
med høynivåabstraksjonene i en hvilken som helst tjenesteorientert arkitektur.
Funksjonene som utgjør TPTP, vil trinnvis utvikle og publisere tjenester som klargjør TPTP-plattformen for
kommandoer fra skript og tilfeldige programmer utenfor Eclipse. TPTP-testfunksjonene har for øyeblikket en
testutføringstjeneste for fleksibel utføring av TPTP-tester på en programmatisk måte.
Det automatiserbare tjenesterammeverket har en lagarkitektur som muliggjør en løs kobling mellom
komponentene i rammeverket. Bussen som transporterer tjenestebrukerforespørsler til tjenesteleverandørsvar (utføring
av tjenester) kan utvides i begge endre med en adaptermodell på klientenden (klientenden kan være kode som kjøres i
en Eclipse-forekomst eller kode som kjøres utenfor Eclipse, for eksempel kommandolinjeskript) og en
tjenesteleverandørmodell på serverenden (serverenden er Eclipse-forekomsten som er vert for plugin-modulene som
leverer tjenesteimplementeringene).
Det kan utvikles andre automatiseringsklientadaptere som tilpasser nye tjenestebrukerparadigmer til
automatiseringsklientene som er standard i TPTP. En automatiseringsadapter for web-tjenesteklienten kan
for eksempel utvikles av en tredjepart og gjøre at automatiserbare TPTP-tjenester kan utføres fra et
standard web-tjenestemiljø, eller det kan skrives en Jython-klientautomatiseringsadapter som støtter bruk av
tjenester fra Jython-miljøet.
Etter som nye tilpassede tjenester blir publisert, øker de gruppen med tjenester som er tilgjengelige for
alle fra en TPTP Eclipse-forekomst, og dermed de tilgjengelige tjenesteleverandørene som kan gi funksjonalitet til
de som er interessert i å bruke det automatiserte tjenesterammeverket. En sluttbruker kan opprette en plugin-modul
med en ny tjeneste ved ganske enkelt å implementere de riktige utvidelsespunktene og utvikle minst en Java-klasse). Denne
tjenesten blir derfor automatisk tilgjengelig fra Ant-skript, skallskript, Java-programmer og
eventuelle andre installerte klientadaptere i brukerens miljø, på grunn av lagarkitekturen og
bussens natur.
Den enkle automatiseringsklientkomponenten har et standard sett med tjenestegrensesnitt som klientadaptere kan
bruke, og den gir også riktig Eclipse-oppstartstrategi for hvert scenario. Det finnes for øyeblikket to oppstart-
og utføringsstrategier, en for tjenestebruk i prosessen og en annen for tjenestebruk utenfor prosessen
(utenfor-prosess-strategien er den vanlige strategien, og den brukes av klienter som er
utenfor en bestemt Eclipse-forekomst). I-prosess-strategien brukes i situasjoner der det er ønskelig at tjenesten
utføres i samme Eclipse-forekomst som kalleren.
Den enkle komponenten virker sammen med den tunge komponenten (tung fordi den er mer avhengig av Eclipse og derfor
har flere bibliotekavhengigheter som automatiseringsklientkomponenten på utsiden er abstrahert fra). Den enkle
komponenten kobles bare til en bestemt Eclipse-forekomst gjennom en streng-ID som kan defineres på forekomsten av automatiseringsklientkomponenten. Automatiseringsserveren
som finnes inne i en en Eclipse-forekomst (også kalt den tunge innebygde komponenten eller formidleren), mottar innkommende
kommunikasjon fra den enkle automatiseringsklientkomponenten og sender kallet til riktig tjenesteleverandør
(også kalt en automatiserbar tjeneste). Automatiseringsserveren definerer noen enkle utvidelsespunkter som
tillater indireksjon mellom den forespurte tjenesten og Java-klassen som behandler forespørselen.
Beslektede oppgaver
Starte tester fra skript og
applikasjoner
Utføre testutføringstjenesten
Beslektet referanse
Støttede egenskaper for
testutføringstjenesten
(C) Copyright IBM Corporation 2000, 2006. All Rights
Reserved.