Kundutbildning för API-virtualisering i sandlådemiljö
Vad är virtualisering i sandlådemiljö?
API-virtualisering i sandlådemiljö är en tjänst som simulerar beteendet hos en aktiv sandlådeinstans. Vår virtualiserade tjänst ger en konsekvent upplevelse där svaret du får är fördefinierat och varierar inte baserat på specifika inmatningsvärden som du tillhandahåller.
Här är ett exempel. Låt oss säga att du ringer flera samtal med samma prisförfrågan och byter avsändar- och mottagaradress för varje test. API:et returnerar samma fördefinierade prissvar oavsett adressändringarna. Även om värdena kanske inte matchar skulle svarets struktur simulera vad du skulle ta emot i den aktiva miljön.
Eftersom den virtualiserade tjänsten inte träffar de aktiva backend-systemkomponenterna skyddas din integrationstestning från backend-beroenden medan du fortfarande får lämpligt svar.
Varför är FedEx sandlådemiljö virtualiserad?
I komplexa, beroende system som FedEx finns det tyvärr ett fåtal tillfällen då en beroende resurs blir otillgänglig och systemtillgängligheten blir lidande. När sådana incidenter inträffar kan de påverka dina API-integreringstester negativt, även om de sker på distans. Det finns även andra begränsningar av realtidsinstanser som kan begränsa omfattningen av dina integrationstester. Några exempel:
- Ett försändelsekonto som inte har den åtkomst som krävs för att testa ett visst specifikt scenario.
- Begränsad tillgänglighet för testdata.
- Planerade eller oplanerade systemavbrott.
Så här kan du använda virtualiserad sandlådeinstans
- Bekanta dig med API-dokumentationen, slutpunkterna och autentiseringsmetoden. Det kommer att hjälpa dig att utforma effektiva tester.
- Hämta och bekanta dig med JSON API-sviten som tillhandahålls i API-dokumentationen.
- Välj och testa transaktionsexempel som passar dina användningsscenarier. För att kunna uppnå en konsekvent upplevelse ska du undvika att ändra strukturen på förfrågningsnyttolasten så att du får det virtualiserade svaret.
- Observera att inte alla inmatningsvärden kommer att påverka svaret. Fokusera i stället på att förstå hur ditt program hanterar de konsekventa svaren.
- Testa alla API:er för korrekt beteende enligt dokumentationen. Inkludera både positiva och negativa testfall.
- Använd de tillhandahållna negativa testfallen för att förstå hur felmeddelanden och statuskoder returneras. Det hjälper dig att avgöra hur ditt program ska hantera fel. Se JSON API-sviten och testfallen med prefixet ”Negative” tillagt.
Fördelar med virtualisering
- Lägre risk för att resurser är otillgängliga.
- Mindre beroende av testdata.
- Snabbare svar jämfört med en aktiv sandlådeinstans.
- Ingen explicit åtkomst på kontonivå krävs för specialtjänsterna.
- Sömlös integreringsupplevelse som underlättar processen för testing och certifiering.
Vanliga frågor
- Hur får jag förfrågningsnyttolasten att träffa det virtualiserade svaret?
Varje API-dokumentation har JSON API-sviten som tillhandahålls. Gå till API-katalog och öppna API-dokumentationen. Titta på avsnittet ”JSON API Collection” i API-dokumentationen. Den här JSON API-sviten har alla förfrågningsnyttolaster som skulle hämta det virtualiserade svaret sparade. - Måste jag ha en token för att komma åt den virtualiserade sandlådeinstansen?
Ja, tokenskapandet och auktoriseringen kommer att fungera som vanligt, och du förväntas skicka en token för varje transaktion som interagerar med den virtualiserade sandlådetjänsten. - Hur vet jag om svaret returneras från den virtualiserade tjänsten?
Det virtualiserade svaret skulle ha varningen nedan tillagd som en del av nyttolasten.
- Varför valideras inte min adress i förfrågningsnyttolasten i API:et Priser och transittider?
Adressvalidering är inte en del av logiken som härleder ett virtualiserat prissvar. Endast land valideras, så du kan ange valfritt värde i resten av adressfälten. - Är alla API:er virtualiserade?
För närvarande har endast följande API:er virtualiserats. Arbete pågår för att virtualisera resten av API-funktionerna.
API:et Priser och transittider | Virtualiserad |
API:et Spårning | Virtualiserad |
API:et Freight LTL – pris- och upphämtningsfunktioner | Virtualiserad |
API:et Adressvalidering | Virtualiserad |
API:et Validering av postnummer | Virtualiserad |
API:et Upphämtningsbegäran | Virtualiserad |
API:et Tillgängliga tjänster | Virtualiserad |
API:et Global handel | Virtualiserad |
API:et Ground – stängning vid dagens slut | Virtualiserad |
API:et Öppen försändelse | Virtualiserad |
API:et Försändelse | Virtualiserad |
API:et Sök efter FedEx-kontor | Virtualiserad |