Deployen op vrijdagmiddag zonder Stress?

A presentation at CINQ Conference in March 2025 in Amsterdam, Netherlands by Bas Stoker

Slide 1

Slide 1

Deployen op vrijdagmiddag zonder stress Bas Stoker // CINQ. Conferentie // 11 maart 2025

Slide 2

Slide 2

Slide 3

Slide 3

Slide 4

Slide 4

Slide 5

Slide 5

Slide 6

Slide 6

Testing Trophy • Bedacht door Kent. C. Dodds:

Slide 7

Slide 7

Slide 8

Slide 8

$ whoami Bas Stoker • Full Stack Developer bij CINQ ICT • 20 jaar ervaring met software development • Enthousiast over nieuwe test-tools zoals Docker en Playwright

Slide 9

Slide 9

Project: NS nieuwbouw BAM • Realtime bijsturen van al het materieel van de NS • Project met vier agile DevOps-teams • Microservices architectuur • Data-bronnen: • Planning • Mutaties vanuit verkeersleiding • GPS-updates

Slide 10

Slide 10

Slide 11

Slide 11

Randvoorwaarden End-2-End test • Test is zowel lokaal als in CI/CD-pipeline te draaien (Azure DevOps) • Geen afhankelijkheden van servers / test-omgevingen

Slide 12

Slide 12

Slide 13

Slide 13

Architectuur

Slide 14

Slide 14

Architectuur

Slide 15

Slide 15

fl Voorbeeld testscript “Tijdscon ict”

Slide 16

Slide 16

Waar loop je in de praktijk tegenaan? • Naamgeving containers: Hostnames binnen vs. buiten het docker network • Opstarttijd containers tijdens development van testscripts

Slide 17

Slide 17

Logische naamgeving: Probleem

Slide 18

Slide 18

Logische naamgeving: Oplossing

Slide 19

Slide 19

Logische naamgeving: Oplossing

Slide 20

Slide 20

Logische naamgeving: Oplossing

Slide 21

Slide 21

Opstarttijd containers: Probleem

Slide 22

Slide 22

Opstarttijd containers: Oplossing • Daemon-proces voor Testcontainers • Afzonderlijk proces voor testscripts + Playwright Browser

Slide 23

Slide 23

Opstarttijd containers: Oplossing

Slide 24

Slide 24

Waarde end-2-end test • Extra vangnet, alle Use Cases zijn afgedekt • Snel updates van dependencies zoals Keycloak valideren • Genereren van documentatie die altijd up-to-date is • Chaos-testing uitvoeren m.b.v. Toxiproxy

Slide 25

Slide 25

Testcontainers • https://testcontainers.com

Slide 26

Slide 26

Playwright • Zit een goed team achter van Microsoft • Support voor MacOS, Windows en Linux • https://playwright.dev

Slide 27

Slide 27

Slide 28

Slide 28

Slide 29

Slide 29