Course Code: inteladvcs
Duration: 21 hours
Course Outline:

 


1. Testy jednostkowe

Wprowadzenie

  • TDD (Test-Driven Development)
  • F.I.R.S.T
  • Co testować a czego nie?

Podstawy

  • Nazewnictwo testów jako klucz do sukcesu
  • Podział na kroki (Arrange, Act, Assert)
  • Cykl Red-Green-Refactor

Pisanie testów

  • Instalacja biblioteki xUnit
  • Podział na przypadki testowe
  • Parametryzacja testów
  • Weryfikacja wartości
  • Weryfikacja typu

Tworzenie atrap (Moq)

  • Cel tworzenia atrap
  • Utworzenie atrapy
  • Weryfikacja wywołania metody

Refaktoryzacja

  • Identyfikacja trudno testowalnego kodu
  • Tworzenie kodu testowalnym
  • Praca z odziedziczonym kodem (legacy code)

Zastosowanie wybranych wzorców projektowych

  • Dependency Injection
  • Strategy
  • Facade
  • Proxy
  • Adapter
  • Decorator
  • Chain of Responsibility
  • Command

Udawanie danych

  • Generowanie danych za pomocą biblioteki Bogus

2. Testy integracyjne

Zastosowanie konteneryzacji z użyciem biblioteki Testcontainers

Przykłady użycia Testcontainers w .NET

  • Mosquitto (MQTT broker)
  • Modbus TCP Simulator
  • Własnego serwera TCP (np. echo server)