Om aan de slag te gaan met assertions raden we aan het artikel Multi-step API Response te lezen voor een overzicht van de belangrijkste functies en features.

In dit artikel wordt uitgelegd hoe assertions werken en hoe ze helpen bij het verifiëren van API-responses en het garanderen van verwacht gedrag.

Assertions

Binnen een stap vindt u Response, waar u assertions kunt configureren.

Assertions zijn voorwaarden die worden gebruikt om uw API-responses te verifiëren. U kunt deze gebruiken om te controleren of uw API-request succesvol was, of bepaalde inhoud uit de response bestaat, of dat er onverwacht gedrag optreedt. U kunt eenvoudig meerdere validaties definiëren om te controleren of uw API correct reageert en de verwachte data retourneert.

In het onderstaande voorbeeld controleert een assertion of de waarde van de productprijs groter is dan 100. Assertions worden gedefinieerd met vier velden: source, property, comparison en target value.

Elk veld komt overeen met een specifieke waarde om te bepalen hoe de response moet worden geëvalueerd. De beschikbaarheid van deze velden kan variëren afhankelijk van de responsecontrole.

Assertions

Hieronder staan de assertionvelden die u kunt definiëren op basis van uw monitoringvereisten.

Assertion source

Met dit veld kunt u de oorsprong of de databron definiëren die u wilt controleren. Deze kan afkomstig zijn van een Response body als JSON, Response body als tekst of een attribute van een HTTP-response, zoals Statuscode en nog veel meer. Raadpleeg Assertion sources voor meer informatie.

Assertion property

Sommige assertion sources zoals Response body als JSON of Response header vereisen dat u een specifieke inhoudcontrole specificeert om de response verder te valideren. Als u specifieke data uit de response wilt controleren, moet u de exacte propertywaarde opgeven die overeenkomt met het type assertion source. In het bovenstaande voorbeeld is Products[0].Price de propertywaarde.

Assertion comparison

Met dit veld kunt u de comparator selecteren die wordt gebruikt om de relatie met de assertion targetwaarde te evalueren. Standaard is dit ingesteld op Is gelijk aan, maar u kunt andere comparison-opties selecteren op basis van uw behoeften.

Assertion target value

Stel dat u de productprijs die uit de API-response is opgehaald, wilt vergelijken met een specifieke waarde, zoals 10. In dit geval is 10 de assertion target value waarmee u wilt vergelijken.

Met dit veld kunt u een waarde definiëren die als basis voor vergelijking moet worden gebruikt. Afhankelijk van het geselecteerde type assertion source, property en comparison kan deze waarde tekst, een getal of een Booleaanse waarde zijn. U kunt ook een variabele-referentie gebruiken die een van deze waardetypes vertegenwoordigt.

Wat gebeurt er als er niet aan een assertionvoorwaarde wordt voldaan?

Alle assertions in een stap worden uitgevoerd zodra de HTTP-request is voltooid en de response is verwerkt. In de regel wordt elke assertion onafhankelijk geëvalueerd, zelfs als een eerdere assertion mislukt. Hierdoor is het mogelijk dat er meerdere assertionfouten worden gerapporteerd voor één stap.

Als een assertion mislukt, stopt de controleregel onmiddellijk met de uitvoering. Alle volgende stappen worden overgeslagen en de controleregelcheck meldt een fout. De foutcode en beschrijving zijn afhankelijk van het type fout. Als meerdere assertions mislukken, wordt de eerste fout in de lijst als de belangrijkste fout beschouwd. Als u wilt dat uw controleregel alle stappen blijft uitvoeren, zelfs als er een fout optreedt, raadpleeg dan het artikel Foutafhandeling in Multi-step API’s.

In sommige gevallen kan het nodig zijn om een assertion opnieuw te proberen, bijvoorbeeld wanneer een timingprobleem een fout-negatief resultaat kan opleveren. U kunt de assertion zo configureren dat deze meerdere keren wordt geëvalueerd. Raadpleeg het artikel Het maximale aantal pogingen inschakelen voor meer informatie.

Door deze website te gebruiken, stemt u in met het gebruik van cookies in overeenstemming met ons Cookiebeleid.