Approval testing

ProAgile, Rikstäckande
Nästa kurstillfälle
Skicka intresseanmälan se detaljer
Utbildningsform
Öppen utbildning
Språk
Svenska
Nästa kurstillfälle
Skicka intresseanmälan se detaljer
Utbildningsform
Öppen utbildning
Språk
Svenska
Få mer information om utbildningen, arrangörerna svarar oftast inom 48h 👍

Kursbeskrivning

De flesta utvecklingsteam har numera automatiserad testning för sin kod, det är ett välkänt mönster som forskning visar leder till högre kvalitet och kortare leveranstider. I vissa fall kan du få ännu bättre resultat med Approval testing än traditionell assert-baserad testautomation. Till exempel när:

  • Den existerande koden saknar testfall och har dålig struktur som orsakar att det är svårt att skriva enhetstester (även kallad legacy-kod).
  • De förväntade resultaten är svåra att beräkna i förhand, men enkla att verifiera i efterhand.
  • Du vill testa en hel komponent, subsystem eller ett helt system end-to-end. Alltså i större bitar än enhetstest.

Den här kursen är till för utvecklare och testare som redan förstår grunderna i testautomation och vill lära sig med avancerade testtekniker. Från erfarenhet vet vi att utvecklingsteam får mest ut av testautomation om ni involverar både testare och utvecklare i arbetet, så kursen är anpassad för båda. Om de går tillsammans så finns störst potential för bra resultat.

Den här kursen hålls av Emily Bache som är en erfaren teknisk agil coach hos ProAgile. Hon förespråkar sedan länge Testdriven utveckling (TDD) och är en av pionjärerna bakom det professionella utvecklarläroforumet ”Coder Dojo”.

Användning av Combination Approvals för att testa Gilded Rose Kata

Kursen är väldigt interaktiv och vi strävar efter att hålla engagemanget i topp under hela kursen samt ge kontroll över det egna lärandet till deltagarna. Vi jobbar med många hands-onövningar under de två dagarna som kursen går och lär oss därmed genom att göra saker i praktiken. Kursen är designad för on-siteutbildning men är helt anpassad för att köras virtuellt. För att undvika skärmtrötthet och öka engagemanget så har vi delat upp kursen i fyra halvdagar.

Innehåll

Kursen innehåller fyra moduler som beskrivs nedan.

Introduktion till Approval testing

Vi tittar på de olika byggstenarna i ett Approval test:

  • Testfall tittar på den faktiska output ett program ger och jämför detta med tidigare godkända resultat, om skillnader upptäcks så misslyckas testet.
  • Normalt sett granskas och godkänns resultatet av en människa när testfallen skapas.
  • Rå outputdata kan processas för att bli läsbar innan den används för godkännande eller jämförande.
  • Designa en Printer som skriver ut komplexa resultat istället för att använda mängder av Asserts.
  • Om faktisk programoutput inte finns tillgänglig när testfallet skrivs, så kan det godkända värdet representeras av ett manuellt utkast till förväntad data.
  • Godkänd testdata sparas separat från källkoden för testfall men i samma repository.
  • När ett testfall fallerar, kan du använda verktyg för att granska skillnader och enkelt uppdatera dina testfall.

Vi arbetar igenom ett antal övningar som ger erfarenhet av verktygen ”Approvals” och ”TextTest”. Vi arbetar i små grupper och varje grupp väljer själva vilket programmeringsspråk de vill använda. Generellt finns övningarna tillgängliga i Java, C#, Python och C++.

Användning av Coverage och Combinations i Legacykod

När du ärver värdefull men svår kod som kräver förändring, så kan Approval testing användas för att komma igång även om du själv inte helt förstår alla detaljer i koden.

  • Använda Coverage för att hitta missade testfall
  • Använda Combinations för att öka förtroendet för testerna

Vi arbetar igenom övningar där vi lägger till tester till en Legacykodbas. med hjälp av ”Approvals”. Vi arbetar i små grupper och varje grupp väljer själva vilket programmeringsspråk de vill använda. Generellt finns övningarna tillgängliga i Java, C#, Python och C++.

Använda Approval testing i Behavioural Driven Development (BDD)

Vanligtvis använder utvecklingsteam Gherkin-syntaxverktyg såsom Cucumber för BDD, men här kommer vi istället att utforska hur vi kan använda en Approval testing-variant. Vi går igenom de olika aspekterna av BDD:

  • Discovery
  • Formulation
  • Automation

och hur de påverkas av en Approval testing-variant.

Vi arbetar igenom övningar där vi arbetar med BDD utifrån ett Approval testingsynsätt. Vi arbetar i små grupper och varje grupp väljer själva vilket programmeringsspråk de vill använda. Generellt finns övningarna tillgängliga i Java, C#, Python och C++. Vi kommer att använda oss av ”Approvals”.

Approval testing med microservices

Microservices är ett populärt arkitekturval idag och det öppnar upp för helt nya möjligheter med automattestning. Vi tittar på hur vi kan använda Approval testing för att:

  • Testa en microservice via dess API
  • Testa en gruppering av Microservices som uppfyller ett scenario utifrån ett användarperspektiv

Vi jobbar i små grupper där vi skriver tester för exempelmicroservicar. Testerna skrivs med ett Domain Specific Language och verktyget TextTest, så det underliggande språket är inte viktigt för deltagarna. Klisterkoden är skriven i Python. De som inte är bekväma med det språket kommer att få gott om hjälp på vägen.

Förkunskaper

Du har tidigare erfarenhet av testautomation, antingen har du skrivit enhetstester eller end-to-endtester med verktyg som Selenium/WebDriver. Du är bekväm med minst ett av språken: Java, C#, C++ eller Python.

Anmälan

Kommande kursstarter

1 tillgänglig kursstart

Skicka intresseanmälan

  • Öppen utbildning
  • Sverige
  • Svenska

Varför välja ProAgile?

Eftertraktad utbildning

Modern utbildningsform

Kursledare med verklig erfarenhet

Intresseanmälan

Beställ information

Fyll i formuläret för att få mer information om Approval testing, direkt från arrangören. Det är gratis och inte bindande!

reCAPTCHA logo Den här hemsidan är skyddad av reCAPTCHA och Googles Integritetspolicy och Användarvillkor tillämapas.
ProAgile
Mölndalsvägen 26
41263 Göteborg

Vi hjälper organisationer att bli mer agila!

Vi har snart 20 års praktisk erfarenhet av agila metoder. Över femtio företag har fått hjälp av oss och vi har utbildat flera tusen personer på alla nivåer och i alla roller! Vi hjälper er med en konkret strategi för...

Läs mer om ProAgile och visa alla utbildningar.

Highlights