“Fail fast (but safe)! Met kleinschalige implementaties, pro actieve monitoring en daardoor goede herstelmogelijkheden.”
Tip 3: Implementeer kleinschalig middels een geautomatiseerde delivery pipeline
Denk goed na over je implementatiestrategie en ga – indien mogelijk – voor kleinschalig implementeren. En dan niet enkel bij een eerste release naar productie. Maar ook bij de tweede, derde, vierde, … keer. Wanneer het in productie niet helemaal goed gaat, dan is de impact hiervan bij een kleinschalige implementatie een stuk kleiner.
Tip 4: Zorg dat je monitoring op orde is
Denk na over wat je moet doen bij eventuele bevindingen. Ben je in staat om verstoringen snel te constateren? Kun je vervolgens direct anticiperen en reageren middels een fix of een eventuele rollback? En, wat doe je met de situaties die niet helemaal goed verlopen zijn? Kun je die corrigeren?
Streef ernaar om de monitoring zo in te richten dat er proactief gehandeld kan worden in plaats van reactief. En denk over je monitoring al na in het voortraject, zodat eventuele requirements die hieruit voortkomen meegenomen kunnen worden tijdens de realisatie.
Poll
Is autonoom testen voor jou een optie?
Tip 5: Architectuur en scoping van je stories: hoe kleiner, hoe beter
Bekijk bij het bepalen van de architectuur of afhankelijkheden voorkomen kunnen worden. Waarom sla je gegevens op in een ander systeem? Kun je deze niet zelf opslaan en een API aanbieden?
Ook bij de omvang van je stories en het Minimum Valuable Product (MVP) moet je scherp te werk gaan. Hoe vaak zien we niet dat een MVP meerdere applicaties beslaat met grote afhankelijkheden waaraan tijdens meerdere sprints gewerkt moet worden. Dit kan echt slimmer, houd de testbaarheid goed in de gaten!
Tip 6: Gebruik Consumer Driven Contract Testing (CDCT) voor het testen van Interfaces
Helemaal onafhankelijk zijn is niet mogelijk. Bijvoorbeeld bij het testen van interfaces. Hoe test je een interface met een andere partij zonder end-to-end omgeving? Voor iedere interface spreek je een contract af met je ‘ketenpartner’: Consumer Driven Contract Testing (CDCT). CDCT is een microservices landschap en relatief eenvoudig toe te passen met tools als Spring Cloud Contract en Pact. In een landschap waarin ook COTS-applicaties (Commercial Off-The-Self) voorkomen, is het allemaal wat complexer. COTS-applicaties bieden momenteel vaak nog geen ondersteuning voor CDCT. Gooi dan niet meteen de handdoek in de ring. Ook in een landschap met COTS-applicaties kun je afspraken met je ketenpartners maken. Wellicht geen volledige CDCT-implementatie, maar stappen en afspraken zijn zeker te maken.
Een veranderingstraject met een lange adem
Wanneer je met bovenstaande tips aan de slag gaat, sta dan stevig in je schoenen en leer met weerstand omgaan! Het gaat hier om een verandertraject en het kost veel tijd en energie om de mindset van medewerkers te wijzigen. Ontwikkelaars zullen bijvoorbeeld niet meteen enthousiast zijn wanneer je ze vraagt om een geautomatiseerde (regressie)test op te zetten. Begeleid en coach ze daarom in het ‘critical thinking’. Leg ze uit waarom het verstandiger is dat een tester zich concentreert op exploratory testen en het verbeteren van het (kwaliteits)proces. Ook de organisatie zelf kan een ‘show-stopper’zijn. Bijvoorbeeld omdat er bepaalde aanpassingen nodig zijn voor de nieuwe werkwijze waar niet iedereen blij mee is. “Je mag pas na een ketenakkoord naar productie” … uh. Natuurlijk gaat het ook een keer fout en wordt er geroepen: “met een end-to-end test hadden we dit gevonden”. Laat je niet uit het veld slaan, maar maak er een leermoment van en bekijk wat de volgende keer anders of beter moet. We moeten niet vergeten dat er in de periode van de end-to-end testen ook issues in productie waren.
Heb daarnaast geduld. Volledig zonder end-to-end testen is slechts de stip op de horizon. De weg ernaartoe is een lange met veel kleine tussenstappen. Iedere stap van het team in de goede richting, maakt ze een stukje autonomer en sneller. Breng de medewerkers van het bedrijf geregeld bij elkaar en herhaal de boodschap. Vier successen en communiceer deze organisatie breed. “Zien doet geloven”. Daarnaast is er training en coaching nodig om medewerkers de benodigde skills bij te brengen.
Heb jij na het lezen van mijn blog vragen over autonoom testen en de weg ernaartoe? Of wil je graag jouw ervaringen hiermee met mij delen? Aarzel dan niet om contact op te nemen.