API Testen met Katalon en Salesforce

API testen met Katalon en Salesforce is een cruciaal onderdeel voor het waarborgen van de betrouwbaarheid en prestaties van Salesforce applicaties. Door gebruik te maken van de uitgebreide testmogelijkheden van Katalon in combinatie met het robuuste API-ecosysteem van Salesforce, kunnen teams krachtige geautomatiseerde tests creëren die de functionaliteit en beveiliging van hun Salesforce-integraties en workflows verifiëren.

Deze inleiding leidt je door het opzetten van API-testen binnen Salesforce, waarbij het belang van het opnemen van API-testen in je strategie voor testdatamanagement wordt benadrukt. Het begrijpen hoe je API’s kunt creëren en beheren in Salesforce’s Object Manager is de eerste stap naar een naadloos testproces. API-testen speelt een cruciale rol bij het vroegtijdig identificeren van discrepanties en kwetsbaarheden in de ontwikkelcyclus, waardoor het een onmisbaar onderdeel is van moderne softwareontwikkelingspraktijken.

Met de juiste opzet kunnen teams hun testprocessen automatiseren, handmatige fouten verminderen en ervoor zorgen dat hun Salesforce-applicaties voldoen aan de hoogste normen van kwaliteit en prestaties. Dit overzicht laat zien hoe je API-testen in Salesforce kunt configureren met Katalon, en benadrukt het belang van het integreren van deze tests met testdatamanagement om efficiëntie en effectiviteit te maximaliseren.


Soorten Salesforce API’s

  1. REST API
    De REST API is een eenvoudige, lichtgewicht optie gebaseerd op REST-principes. Het wordt gebruikt voor interactie met Salesforce-data met behulp van standaard HTTP-methoden (GET, POST, PATCH, DELETE).
    Gebruiksscenario: Records ophalen, nieuwe records aanmaken, bestaande records bijwerken of verwijderen.

  2. SOAP API
    De SOAP API biedt een complexer, op XML gebaseerd protocol dat ideaal is voor integratie met legacy-systemen. SOAP wordt gebruikt om in realtime met Salesforce-objecten en -data te werken.
    Gebruiksscenario: Integratie met bedrijfssystemen waar strikte XML-gebaseerde communicatie vereist is.

  3. Bulk API
    De Bulk API is geoptimaliseerd voor het asynchroon verwerken van grote hoeveelheden data. Het is nuttig voor het in bulk laden of verwijderen van data.
    Gebruiksscenario: Importeren of exporteren van duizenden of miljoenen records.

  4. Streaming API
    De Streaming API wordt gebruikt voor het ontvangen van realtime meldingen van Salesforce. Deze API is ideaal voor applicaties die wijzigingen in Salesforce-data moeten volgen en dienovereenkomstig moeten handelen.
    Gebruiksscenario: Event-driven architectuur, realtime dashboards.

  5. Metadata API
    De Metadata API stelt je in staat om metadata binnen Salesforce op te halen, te implementeren en te beheren (zoals Apex-klassen, aangepaste objecten, workflows, etc.).
    Gebruiksscenario: Migratie van configuraties tussen omgevingen.


Voorbeeld 1: Data ophalen met Salesforce REST API

Om data op te halen van Salesforce met de REST API, gebruik je meestal een GET verzoek. Hier is hoe je records kunt ophalen van het Salesforce Account object met behulp van Katalon Studio:

Stap 1: Stel OAuth2 Authenticatie in

Voordat je een verzoek doet, moet je je authenticeren en een toegangstoken krijgen. Zodra je het token hebt:

Stap 2: Haal Data op (GET Verzoek)

  • Eindpunt: https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/{AccountId}

Voorbeeld:

GET https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/001D000000IqhSL
Authorization: Bearer {access_token}
  • Katalon Studio Setup:
    1. Maak een nieuwe RESTful Request in Katalon Studio.
    2. Stel de methode in op GET.
    3. Plak in het veld URL je Salesforce eindpunt, vervang {AccountId} door een daadwerkelijk Account ID.
    4. Onder het tabblad Autorisatie, kies Bearer Token en voeg het token in dat je hebt opgehaald uit het Salesforce OAuth2 proces.
    5. Voer het verzoek uit, en je zou de details van het gespecificeerde Account moeten ophalen.

Reactie Voorbeeld (JSON):

{
  "Id": "001D000000IqhSL",
  "Name": "Acme Corporation",
  "Phone": "1234567890",
  "Website": "http://www.acme.com",
  ...
}

Voorbeeld 2: Data posten met Salesforce REST API

Om een nieuw record in Salesforce te creëren, gebruik je een POST verzoek. Voor dit voorbeeld, laten we een nieuw Account aanmaken.

Stap 1: Authenticatie

Zorg ervoor dat je je toegangstoken bij de hand hebt na het voltooien van de OAuth2 flow.

Stap 2: Post Data (POST Verzoek)

  • Eindpunt: https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/

Voorbeeld:

POST https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/
Authorization: Bearer {access_token}
Content-Type: application/json

{
  "Name": "New Acme Corporation",
  "Phone": "9876543210",
  "Website": "http://www.newacme.com"
}
  • Katalon Studio Setup:
    1. Maak een nieuwe RESTful Request in Katalon Studio.
    2. Stel de methode in op POST.
    3. Plak in het veld URL je Salesforce eindpunt.
    4. Onder het tabblad Autorisatie, kies Bearer Token en voeg het token in dat je hebt opgehaald uit het Salesforce OAuth2 proces.
    5. Ga naar het gedeelte Body en selecteer Raw als het bodytype. Plak vervolgens de JSON-structuur voor het nieuwe record.
    6. Voer het verzoek uit, en Salesforce zal een nieuw Account record aanmaken.

Reactie Voorbeeld:

{
  "id": "001D000000IqhSL",
  "success": true,
  "errors": []
}

Voorbeeld 3: Data bijwerken met Salesforce REST API

Om een bestaand record bij te werken, gebruik je een PATCH verzoek. Voor dit voorbeeld, zullen we het Telefoon nummer van een bestaand Account bijwerken.

  • Eindpunt: https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/{AccountId}

Voorbeeld:

PATCH https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/001D000000IqhSL
Authorization: Bearer {access_token}
Content-Type: application/json

{
  "Phone": "5551234567"
}
  • Katalon Studio Setup:
    1. Stel de methode in op PATCH in je RESTful Request.
    2. In het gedeelte Body, werk de JSON-structuur bij met de velden die je wilt wijzigen.
    3. Voer het verzoek uit, en Salesforce zal het Account bijwerken.

Reactie Voorbeeld (Succes):

{
  "success": true,
  "errors": []
}

Voorbeeld 4: Data verwijderen met Salesforce REST API

Om een record te verwijderen, gebruik je een DELETE verzoek. Voor dit voorbeeld, zullen we een bestaand Account verwijderen.

  • Eindpunt: https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/{AccountId}

Voorbeeld:

DELETE https://yourInstance.salesforce.com/services/data/vXX.X/sobjects/Account/001D000000IqhSL
Authorization: Bearer {access_token}
  • Katalon Studio Setup:
    1. Stel de methode in op DELETE in je RESTful Request.
    2. Voer het verzoek uit, en het gespecificeerde Account zal worden verwijderd uit Salesforce.

Reactie Voorbeeld (Geen Inhoud):

  • Een succesvolle verwijdering geeft geen inhoud terug, aangegeven door een 204 statuscode.

Voorbeeld van Bulk API: Data laden

Met Bulk API, kun je grote hoeveelheden data asynchroon laden. Laten we 1.000 records laden in het Account object met behulp van Bulk API v2.

  • Eindpunt: https://yourInstance.salesforce.com/services/data/vXX.X/jobs/ingest

Voorbeeld Verzoek (POST om een Job te Creëren):

POST https://yourInstance.salesforce.com/services/data/vXX.X/jobs/ingest
Authorization: Bearer {access_token}
Content-Type: application/json

{
  "object": "Account",
  "contentType": "CSV",
  "operation": "insert"
}

Zodra de job is aangemaakt, kun je het CSV-bestand met de records uploaden en de voortgang van de job volgen.