Verifica di un'API con l' ambiente di test Test Environment
Usa il Locale Test Environment (LTE) per testare le API sul tuo computer locale, senza la necessità di connetterti a unAPI Connect server di gestione. L' ambiente di test Test Environment è un API Manager leggero in esecuzione sulla macchina locale. Consente di testare rapidamente le API localmente.
API Connect fornisce i seguenti metodi per il test di una API sulla tua macchina locale:
- Richiama l'API dall'applicazione IU API Designer in esecuzione in modalità online come descritto in Test di una API.
- Richiama l'API in Ambiente di test Test Environment con il comando cURL , come descritto nelle seguenti sezioni.
Prerequisiti
- Il API Connect developer toolkit, inclusa l'interfaccia utente API Designer , installato. Per istruzioni sull'installazione e sull'esecuzione, vedi Configurazione del toolkit API Connect.
- L' Ambiente di test Test Environment e API Designer devono provenire dalla stessa release del fix pack API Connect per poter lavorare insieme.
- Docker installato.Nota: l' ambiente di test Test Environment non è supportato con Docker Versione 18.09.x.
- Almeno 4 GB di RAM disponibili per Docker se viene utilizzato un singolo tipo di gateway oppure 6 GB se vengono utilizzati sia DataPower® API Gateway che DataPower Gateway (v5 compatible) .Nota: quando aumenti il numero di API pubblicate nei tuoi gateway, dovrai assegnare ulteriore memoria a Docker. Sarà inoltre necessario avviare Ambiente di test Test Environment con un database più grande; consultare
apic-lte start
. - Se stai usando Windows, assicurati che la tua unità C: (o l'unità su cui si trova la tua directory HOME , se diversa), sia abilitata come unità condivisa in modo che i file Local Test Environment siano accessibili ai contenitori Docker .
Installazione di Ambiente di test Test Environment
Esistono due opzioni per l'installazione di Ambiente di test Test Environment:
- Ogni utente scarica le immagini Test Environment locale sulla propria macchina locale e installa Test Environment locale da lì.
- Un utente scarica le immagini Ambiente di test Test Environment e le carica in un registro Docker privato, da dove qualsiasi utente può installare l' Ambiente di test Test Environment.
Per installare l' ambiente di test Test Environment dalla macchina locale, completare la seguente procedura:
Nota: In tutti i comandi Test Environment locale utilizzati nella parte rimanente di questa pagina, sostituire piattaforma con
macOS
, linux
o windows
, in base alla propria piattaforma, nel modo seguente:- macOS : sostituire
platform-apic-lte
conosx-apic-lte
- Linux: sostituire
platform-apic-lte
conlinux-apic-lte
- Windows: sostituire
platform-apic-lte
conwin-apic-lte
Per caricare le immagini Ambiente di test Test Environment in un registro Docker privato, completa la seguente procedura:
Avvio dell'ambiente di test locale Test Environment
- Avvia le immagini Docker immettendo il seguente comando:
platform-apic-lte start
Nota:- Per impostazione predefinita, il comando
platform-apic-lte start
avvia solo un DataPower API Gateway. Per avviare anche un DataPower Gateway (v5 compatible), immettere il seguente comando:platform-apic-lte start --datapower-gateway-enabled --datapower-api-gateway-enabled
- L'avvio dell' Ambiente di test Test Environment potrebbe non riuscire con un messaggio di errore che include le stringhe
Error: certificate is not yet valid
eCERT_NOT_YET_VALID
. La causa più probabile è che l'impostazione di data e ora non sia corretta sulla macchina su cui è in esecuzione Ambiente di test Test Environment. Assicurarsi che l'impostazione della data e dell'ora sia corretta, prima di tentare nuovamente il comando di avvio. Se utilizzi Docker per Windows, l'orologio nei contenitori Docker può diventare non sincronizzato con l'orologio di sistema, specialmente dopo che una macchina è stata messa in modalità di sospensione. In questo caso, il riavvio di Docker dovrebbe correggere la discrepanza dell'orario; per ulteriori informazioni, vedi https://github.com/docker/for-win/issues/4526. - Per impostazione predefinita, l'LTE inizia con un database di backend vuoto che non contiene API e prodotti che potrebbero essere stati pubblicati durante un'esecuzione precedente dell'LTE. Per avviare l'LTE con il database di back - end utilizzato durante la precedente esecuzione, utilizzare l'indicatore
--keep-config
, ad esempioplatform-apic-lte start --keep-config
. Quando si utilizza--keep-config
, qualsiasi altro indicatore specificato per l'inizio viene ignorato. Vengono invece utilizzati gli stessi indicatori utilizzati durante l'avvio precedente, in particolare vengono abilitati gli stessi gateway.
- Per impostazione predefinita, il comando
- Verificare che l' Test Environment locale sia installato e in esecuzione correttamente immettendo i seguenti comandi:
Nota: per configurare le credenziali del toolkit per l'Test Environment locale, utilizzare il seguente comando:
apic client-creds:set ~/.apic-lte/credentials.json
Preparazione di una API per il test in Ambiente di test Test Environment
Per preparare un'API per il test in Ambiente di test Test Environment, devi pubblicarla nel catalogo Sandbox in Ambiente di test Test Environment. Se vuoi testare un'API che hai già pubblicato, procedi a Test di un'API nell' Test Environmentlocale., altrimenti, completare la seguente procedura:
Verifica di un'API in Ambiente di test Test Environment.
Per testare un'API nell' Test Environment locale, effettuare una chiamata API REST al seguente URL :
https://localhost:9444/localtest/sandbox/basepath/operation_path?client_id=lte_client_id
dove:- basepath è il percorso di base configurato nella definizione API.
- operation_path è il percorso dell'operazione che vuoi richiamare, come configurato nella definizione dell'API.
- lte_client_id è l'ID client per l'applicazione di test nell'ambiente di verifica locale, come restituito dal comando
platform-apic-lte status
nel passo 2.
Il seguente esempio mostra come verificare l'API creata nell'esercitazione Creazione di una definizione dell'API REST proxy, utilizzando il programma di utilità
curl
; l'API restituisce i dettagli delle filiali della banca:curl -k https://localhost:9444/localtest/sandbox/branches/details?client_id=80963e74076afe50d346d76401c3c08a
[{"id":"0b3a8cf0-7e78-11e5-8059-a1020f32cce5","type":"atm","address":{"street1":"600 Anton Blvd.","street2":"Floor 5","city":"Costa Mesa","state":"CA","zip_code":"92626"}},
{"id":"9d72ece0-7e7b-11e5-9038-55f9f9c08c06","type":"atm","address":{"street1":"4660 La Jolla Village Drive","street2":"Suite 300","city":"San Diego","state":"CA","zip_code":"92122"}},
{"id":"ae648760-7e77-11e5-8059-a1020f32cce5","type":"atm","address":{"street1":"New Orchard Road","city":"Armonk","state":"NY","zip_code":"10504"}},
{"id":"c23397f0-7e76-11e5-8059-a1020f32cce5","type":"branch","phone":"512-286-5000","address":{"street1":"11400 Burnet Rd.","city":"Austin","state":"TX","zip_code":"78758-3415"}},
{"id":"ca841550-7e77-11e5-8059-a1020f32cce5","type":"atm","address":{"street1":"334 Route 9W","city":"Palisades","state":"NY","zip_code":"10964"}},
{"id":"dc132eb0-7e7b-11e5-9038-55f9f9c08c06","type":"branch","phone":"978-899-3444","address":{"street1":"550 King St.","city":"Littleton","state":"MA","zip_code":"01460-1250"}},
{"id":"e1161670-7e76-11e5-8059-a1020f32cce5","type":"branch","phone":"561-893-7700","address":{"street1":"5901 Broken Sound Pkwy. NW","city":"Boca Raton","state":"FL","zip_code":"33487-2773"}},
{"id":"f9ca9ab0-7e7b-11e5-9038-55f9f9c08c06","type":"atm","address":{"street1":"1 Rogers Street","city":"Cambridge","state":"MA","zip_code":"02142"}}]
Comandi Ambiente di test Test Environment
La seguente tabella riepiloga i comandi Ambiente di test Test Environment ; utilizzare il comando
help
per ottenere i dettagli di utilizzo completi per qualsiasi comando.Comando | Descrizione |
---|---|
platform-apic-lte help command |
Visualizzare le informazioni di aiuto per qualsiasi comando. |
platform-apic-lte init |
Scarica le immagini Ambiente di test Test Environment Docker . |
platform-apic-lte start |
Avvia le immagini Ambiente di test Test Environment Docker . Utilizzare il parametro --database-max-heap-size per impostare la dimensione del database Ambiente di test Test Environment , in byte; ad esempio: Il valore predefinito è 1024M .Suggerimento: per impostazione predefinita, il comando
platform-apic-lte start elimina tutti i dati precedenti e reinizializza la configurazione Ambiente di test Test Environment , in modo che tutta la configurazione precedente, inclusi i prodotti pubblicati, venga eliminata. Per conservare la configurazione precedente e applicare gli stessi parametri di comando utilizzati nel precedente comando platform-apic-lte start , fornire il parametro --keep-config . |
platform-apic-lte status |
Visualizzare le informazioni sullo stato per i componenti Ambiente di test Test Environment e i dettagli di autenticazione ed endpoint. |
platform-apic-lte stop |
Arresta le immagini Ambiente di test Test Environment Docker . |
platform-apic-lte version |
Visualizzare le informazioni sulla versione Ambiente di test Test Environment . |
Risoluzione dei problemi di Ambiente di test Test Environment
È possibile consultare il file di log per ogni microservizio o database Ambiente di test Test Environment utilizzando il seguente comando:
docker logs container-name
dove nome - contenitore è uno dei seguenti:
apic-lte-juhu
: il gateway di autenticazioneapic-lte-apim
: il servizio API Managementapic-lte-lur
: il registro utente localeapic-lte-db
: il database Postgres del servizio API Managementapic-lte-datapower-api-gateway
: DataPower API Gatewayapic-lte-datapower-gateway
: DataPower Gateway (v5 compatible)
È possibile accedere ai log del gateway in uno dei seguenti modi:
Valori della porta Ambiente di test Test Environment
Se uno dei valori di porta predefiniti per i componenti dell' Ambiente di test Test Environment è in conflitto con le porte già in uso sul sistema, è possibile modificarli quando si avvia l' Ambiente di test Test Environment passando uno o più parametri
--component
port_value
al comando platform-apic-lte start
, dove:- component è il componente Ambiente di test Test Environment di cui si desidera modificare il valore della porta.
- valore_porta è il valore richiesto.
Ad esempio:
platform-apic-lte start --datapower-api-gateway-api-port 9445
La seguente tabella elenca i componenti, insieme ai parametri component corrispondenti, e i valori porta predefiniti:
Componente | parametro component | Valore porta predefinito |
---|---|---|
DataPower API Gateway Porta API | datapower-api-gateway-api-port |
9444 |
Porta del servizio DataPower API Gateway API Connect | datapower-api-gateway-apic-service-port |
3001 |
DataPower API Gateway Porta di gestione REST | datapower-api-gateway-rest-management-port |
5555 |
DataPower API Gateway Porta SSH | datapower-api-gateway-ssh-port |
9023 |
IU Web di gestione DataPower API Gateway | datapower-api-gateway-web-gui-port |
9091 |
DataPower API Gateway Porta di gestione XML | datapower-api-gateway-xml-management-port |
5551 |
DataPower Gateway (v5 compatible) Porta API | datapower-gateway-api-port |
9443 |
Porta del servizio DataPower Gateway (v5 compatible) API Connect | datapower-gateway-apic-service-port |
3000 |
DataPower Gateway (v5 compatible) Porta di gestione REST | datapower-gateway-rest-management-port |
5554 |
DataPower Gateway (v5 compatible) Porta SSH | datapower-gateway-ssh-port |
9022 |
IU Web di gestione DataPower Gateway (v5 compatible) | datapower-gateway-web-gui-port |
9090 |
DataPower Gateway (v5 compatible) Porta di gestione XML | datapower-gateway-xml-management-port |
5550 |
Porta API della piattaforma | platform-api-port |
2.000 $ |