Werkafspraken
Om goed samen te kunnen werken aan geautomatiseerde testscripts is het nodig goede werkafspraken te maken. Dit zijn afspraken om ervoor te zorgen dat:
- We elkaar tijdens het werk zo min mogelijk in de weg zitten
- We allemaal op ongeveer dezelfde manier scripts schrijven tbv leesbaarheid
- Duidelijk en logisch is hoe de projectstructuur in elkaar steekt tbv vindbaarheid
- We algehele kwaliteit van onze scripts goed kunnen bewaken
- Afspraken zijn waar mogelijk verrijkt met screenshots, flow diagrammen of links om de afspraken te verduidelijken en illustreren.
Proces afspraken
Proces afspraken beginnen al bij het begin van een sprint, bijvoorbeeld om dan al af te spreken met elkaar welke functionaliteit wel en welke niet geautomatiseerd dient te worden en op welk niveau. Daarnaast maken we hieronder afspraken hoe we samenwerken icm versiebeheer (Git).
Project afspraken
Hieronder maken we afspraken die met het project te maken hebben en dan specifiek met de bestandstructuur van het project. Hoe is de structuur grofweg opgebouwd, waar moeten verschillende soorten bestanden naartoe, wanneer maak je een nieuwe map, wanneer verplaats je een bestand, wanneer maak je een nieuw bestand of breidt je een bestaand bestand uit. Gebruiken we POM dan beschrijven we dat ook hier.
Script afspraken
Hier staan de afspraken rondom de testscripts zelf. Hoe richten we onze scenario’s in, wanneer moeten scenario’s los van elkaar te draaien zijn en waarom en wanneer maak je er juist wel een langere flow van. Waar/hoe schrijf je precies je asserts, hoe gaan we om met duplicate code en hoe gaan we om met documentatie. Hoe zit onze tag structuur in elkaar. Wanneer gebruik je variabelen of aliasses.
API testing afspraken
Hier komen alle afspraken rondom de API testing aanpak. Hoe en wanneer maken we gebruik van API calls en waarom. Wat wordt de centrale plek waar we deze calls beheren en wie schrijft/onderhoudt ze.
CI afspraken
Alle afspraken die te maken hebben met hoe ons project draait in Azure DevOps komen hier te staan. Dus wanneer draait wat precies en waarom (hoe ziet de schedule eruit), op welke URL(s), waar komt rapportage terecht (dashboarding), wie worden genotificeerd met resultaten, wie beheert dit.
Overig
Plek voor eventuele overige afspraken die geen plek hebben onder een van de bovenstaande thema’s. Bijvoorbeeld als het gaat om de IDE, tips, handige extensies/plugins.