Boost your Architecture by Test-Driven Development

Praktisk träning i hur man använder Test-Driven Development (TDD) för att förstärka arkitekturen i dina projekt. Kursen täcker skrivning av unit-, integrations- och end-to-end-tester, och visar hur du kan skydda och genomdriva reglerna i din arkitektur. Vi visar hur TDD hjälper till att bygga och förbättra hållbar arkitektur. JUnit, Kotest och Spock-ramverk används i exemplen, men kunskapen som erhålls under kursen är lätt tillämpbar på andra testbibliotek. Under kursen kommer deltagarna att lära sig om utmaningarna med att underhålla ett stort antal tester i ett projekt och hur man undviker vanliga fallgropar.

Varaktighet
2 dagar
Nivå
Medel
Format

60% workshop /

40% föreläsning

Max deltagare
20
Instruktörer
1
Livstidsåtkomst
  • Utbildningsmaterial
  • Slack-gemenskap
Vem bör delta

Utvecklare och Tech Leads

Viktigaste lärdomar
  • Testtyper och TDD/BDD med röd-grön-refaktor
  • JUnit och Spock/Kotest grundläggande med praktiska exempel
  • Testdubbletter: dummies, fakes, stubs, mocks, spies
  • Integrationstestning i Spring Boot: DB, tjänster, REST, externa system
  • Strategier för läsbara, underhållbara testsviter
Utbildningsprogram

Dag 1

  • Introduction
    • Why do we need tests?
    • Unit, integration, contract, and end-to-end tests
    • Shapes of tests
    • TDD/BDD
  • Kotest or Spock
    • Features and examples
    • Comparison to other Java testing libraries
    • Killer features
  • Test doubles
    • Dummies
    • Fakes
    • Stubs
    • Mocks
    • Spies
  • Properly written tests
    • Good unit tests
    • Code smells in unit tests
    • Patterns

Dag 2

  • Integration tests (with examples in Spring Boot)
    • Why do we need integration tests?
    • Different flavours of integration tests
    • Setup for integration tests
    • Testing integration with database
    • Testing application services
    • Testing REST
    • Testing communication with external services
  • Testing Dates
  • Tests Maintenance
    • Challenges with maintaining a large number of tests
    • Readable and maintainable big suites of tests

Redo att komma igång?

Kontakta oss för att diskutera dina utbildningsbehov, schema, och hur vi kan anpassa detta program för ditt team.