Data-gedreven testen (DDT) is een testmethodologie waarbij testgegevens worden opgeslagen in een tabel- of spreadsheetformaat. Dit stelt testers in staat om een reeks tests uit te voeren met verschillende gegevenswaarden zonder voor elke gegevensset meerdere tests scripts te schrijven. Deze aanpak is bijzonder nuttig in omgevingen zoals Salesforce en Katalon Studio om verschillende redenen:

In Salesforce Testen

Salesforce is een zeer aanpasbaar platform met complexe bedrijfslogica, workflows en gebruikersinteracties die vaak getest moeten worden met meerdere gegevenssets om een uitgebreide dekking te garanderen.

  • Verscheidenheid aan Gebruiksscenario’s: Salesforce applicaties zijn op maat gemaakt om te voldoen aan specifieke bedrijfsbehoeften die sterk kunnen variëren van de ene organisatie naar de andere. DDT stelt testteams in staat om een breed scala aan scenario’s te dekken door simpelweg de invoer- en validatiegegevens te variëren.
  • Complexe Bedrijfslogica: Salesforce applicaties bevatten vaak complexe validatieregels, workflows en procesbouwers. DDT helpt ervoor te zorgen dat al deze elementen naar verwachting werken in verschillende scenario’s en gegevensomstandigheden.
  • Efficiëntie en Schaalbaarheid: Door de testlogica te scheiden van de testgegevens, maakt DDT in Salesforce een efficiëntere testcreatie en -onderhoud mogelijk. Naarmate de bedrijfsvereisten evolueren, kan het toevoegen van nieuwe tests vaak zo eenvoudig zijn als het toevoegen van nieuwe rijen gegevens aan uw testgegevensbron.
  • Verbeterde Testdekking en Kwaliteit: DDT kan leiden tot verbeterde testdekking omdat het gemakkelijker wordt om meerdere scenario’s te testen. Dit grondige testen helpt de algehele kwaliteit en betrouwbaarheid van de Salesforce applicatie te verbeteren. Voor DDT zullen we het datamodel van Salesforce leren om standaardgegevens toe te voegen en te verwijderen via de verschillende API’s die het datamodel ondersteunen.

Een zeer coole functie is dat je de queries als parameters in Salesforce SOQL kunt gebruiken, zoals bijvoorbeeld:

https://bsure-digitalbv-dev-ed.develop.my.salesforce.com/services/data/v60.0/query/?q=Select Name from Account

In Katalon Studio

Katalon Studio ondersteunt data-gedreven testen van nature, waardoor het een krachtige tool is voor het testen van web-, mobiele en API-applicaties, inclusief die gebouwd op Salesforce.

  • Veelzijdige Gegevensbronnen: Katalon Studio ondersteunt verschillende gegevensbronnen voor DDT, waaronder Excel-bestanden, databases en CSV-bestanden. Deze veelzijdigheid maakt het gemakkelijk om testgegevens van verschillende oorsprong en formaten te integreren.
  • Eenvoudige Integratie met Salesforce: Bij het testen van Salesforce applicaties kan Katalon Studio gemakkelijk testgegevens consumeren om tests uit te voeren die interageren met Salesforce’s UI-elementen, API-eindpunten of beide. Dit zorgt ervoor dat Salesforce-aanpassingen werken zoals verwacht met verschillende gegevenssets.
  • Automatiseringsefficiëntie: De DDT-mogelijkheden van Katalon Studio stellen testers in staat om een enkel testscript te schrijven dat meerdere keren kan worden uitgevoerd met verschillende gegevenssets. Dit vermindert de inspanning en tijd die nodig is voor het onderhoud van testscripts en verhoogt de testdekking.
  • Foutidentificatie en Debugging: Het uitvoeren van tests met verschillende gegevenssets kan helpen bij het identificeren en debuggen van fouten onder verschillende omstandigheden, waardoor de robuustheid van de geteste applicatie wordt verbeterd.

Waarom Data-Gedreven Testen Gebruiken in Salesforce en Katalon

  • Verminder Handmatige Inspanning: Het handmatig testen van complexe applicaties zoals Salesforce met meerdere gegevenssets is tijdrovend en gevoelig voor menselijke fouten. DDT automatiseert dit proces, waardoor de handmatige inspanning aanzienlijk wordt verminderd.
  • Zorg voor Gegevensintegriteit: In Salesforce is het waarborgen van gegevensintegriteit over verschillende objecten en relaties cruciaal. DDT helpt te valideren dat bedrijfsprocessen correct werken voor alle verwachte variaties van gegevens.
  • Verbeter Testdekking: DDT maakt de uitvoering van meer tests met minder inspanning mogelijk, verbetert de dekking en zorgt ervoor dat de applicatie verschillende real-world gegevensscenario’s aankan.
  • Pas je Snel aan Veranderingen aan: Salesforce-omgevingen ondergaan vaak frequente veranderingen en updates. DDT in Katalon Studio stelt teams in staat om snel testgegevens en -scenario’s aan te passen zonder tests scripts te hoeven herschrijven, wat continue testen vergemakkelijkt. Voor deze cursus zullen we ons nu alleen richten op datagedreven testen binnen Katalon. In het deel over API-testen zullen we terugkomen op de datagedreven aspecten van Salesforce en dit combineren met een delete API om accounts te verwijderen.

Uitdaging, we gaan dit hardcoded script datagedreven maken via een csv

Om je script datagedreven te maken, moet je het aanpassen om gegevens te gebruiken van een externe bron, zoals een CSV-bestand, dat Katalon Studio kan lezen. Deze aanpak stelt je in staat om de testgegevens gemakkelijk te wijzigen zonder het script zelf te veranderen. Hier is een vereenvoudigd voorbeeld van hoe je je script kunt herstructureren om datagedreven te zijn met Katalon Studio:

  • Bereid je Testgegevensbestand Voor: Maak een CSV-bestand met de nodige kolommen voor je testgegevens, zoals AccountName, Site, AnnualRevenue, Phone, Fax en TypeOfAccount. Vul het in met de gegevensrijen die je wilt testen.
  • Importeer je Testgegevens in Katalon Studio:
    • Ga in Katalon Studio naar Bestand > Nieuw > Testgegevens.
    • Selecteer CSV en blader naar je CSV-bestand.
    • Geef je Testgegevensobject een naam (bijv., AccountTestData).

Pas je Script aan om Testgegevens te Gebruiken:

Vervang de hardgecodeerde waarden in je script door verwijzingen naar de gegevens uit je Test

Het zou er nu zo uit moeten zien.

Uitdaging:

Voer het script uit met de datagedreven opstelling door op de afspeelknop in de bovenhoek te klikken. Maak een fork van en/of download het sjabloonrepo https://github.com/learn-automated-testing/Katalon_Salesforce_Course. Of maak gewoon je eigen repo en voer deze repo uit zoals ik heb laten zien.