Boost your Architecture by Test-Driven Development

Hands-on training on how to use Test-Driven Development (TDD) to boost architecture of your projects.

Varighet: 3 dager fra kl 09:00 - 16:00

Pris: 16900

Kurskategori: Applikasjonsutvikling

Kursdatoer er ikke helt avklart ennå, men kontakt kurs@bouvet.no for påmelding!

Hands-on training on how to use Test-Driven Development (TDD) to boost the architecture of your projects. The course covers writing unit, integration, and end-to-end tests, showing how you can guard and enforce the rules of your architecture. We show the ways TDD helps with building and improving sustainable architecture. JUnit, Kotest, and Spock frameworks are used in the examples, however, the knowledge gained during the course is easily applicable to other testing libraries. During the course, attendees will learn about the challenges of maintaining a huge number of tests in a project, and how to avoid the usual pitfalls.

Audience: Developers and Tech Leads
Duration: 3 days
Format: 60% workshop / 40% lecture
Program:
– Day 1: Introduction, JUnit, Spock/Kotest, Test doubles, Properly written tests
– Day 2: Integration tests based on Spring Boot setup, Testing Dates
– Day 3: Tests Maintenance, Property-based testing, Mutation testing, and Other Testing tools

Day 1. 

  • Introduction
    • Why do we need tests?
    • Unit, integration, contract, and end-to-end tests
    • Shapes of tests
    • TDD/BDD
  • JUnit
    • Features and examples
    • When to use JUnit 
  • 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

Day 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

Day 3.

  • Tests Maintenance
    • Challenges with maintaining a large number of tests
    • Readable and maintainable big suites of tests
  • Keeping codebase clean
  • Property-based testing
  • Mutation testing
  • Other Testing tools

Kursdatoer er ikke helt avklart ennå, men kontakt kurs@bouvet.no for påmelding!

 

Kursinstruktør

Vadzim Prudnikau is a Hands-on Architect, IT Trainer, and Conference Speaker with 20+ years of experience (7 years in the Norwegian market), passionate about building high-quality software, mentoring developers, and sharing knowledge. He has trained over 500 professionals in Architecture, EventStorming, and TDD, built and deployed more than 10 production-ready projects, led multiple development teams, and created a successful Java department from scratch. Along the way, I’ve mentored 20+ developers and conducted 100+ technical interviews.

His expertise lies in Java, but he also have experience with Kotlin, Groovy, and other programming languages. Vadzim believe that strong technical skills, continuous learning, teamwork, and knowledge-sharing are the keys to success in software development.

Marek Dominiak i a CTO of a software house, a hands-on architect, and a Trainer with 18 years of experience (15 years in Norwegian market) mainly in the Java world. He spent a lot of time mentoring developers and leading teams, with a big focus on creating sustainable solutions – systems that will last for many years. This set him on the path of learning about Software Craftsmanship, Domain-Driven Design, and code quality early on.

Marek has trained more than 500 people in modern architecture and testing. I like to share my knowledge at conferences related to software development. On some occasions I’m speaker on Software Development conferences: DevoxxPL, DevoxUK, JPrime, JDD in Krakow, Warsaw IT Days,…)

Ønsker du å samle flere ansatte til et bedriftsinternt kurs?

Finner du ikke det helt optimale kurset eller kombinasjonen av kurs? Da ordner vi det - sammen. Vi kan tilrettelegge kurs slik at de inneholder akkurat det dere har behov for. Vi kan sette opp et helt nytt kurs, eller tilpasse eksisterende kurs og materiell. Flere medarbeidere kan selvfølgelig også samles til et eget felles kurs, for maksimal effektivitet. Ta kontakt med meg for et forslag til gjennomføring og et tilbud basert på deres behov.

Henrik Buzzi