Kurs Test-Driven Development
Kurs Test-Driven Development zawiera wszystkie informacje aby rozpocząć i nauczyć się programowania opartego o testy jednostkowe. W kursie dowiesz się czym jest TDD od strony teoretycznej i praktycznej, dowiesz się jak rozpocząć z nim pracę oraz poznasz zaawansowane techniki przydatne w pracy na co dzień.
Kurs oparty jest o kod i narzędzia C#.
Kod źródłowy kursu znajduje się na GitHubie pod adresem: https://github.com/dariusz-wozniak/TddCourse.
Jeśli spodobał Ci się kurs i TDD, możesz rozwinąć skrzydła z książką, której jestem autorem.
Spis treści:
Część I: Testy jednostkowe – wstęp
- Wstęp do TDD
- Testy jednostkowe, a integracyjne
- Struktura testu, czyli Arrange-Act-Assert
- Nasz pierwszy test jednostkowy
- Nasz drugi test jednostkowy
- Dobre i złe praktyki testów jednostkowych
- Inicjalizacja i czyszczenie danych (SetUp i TearDown)
- Testy parametryzowane
- Testy kombinatoryczne i sekwencyjne
- Teorie
- Testowanie klas generycznych
- Classic vs. Constraint Assert Model
- Testowanie wywołań asynchronicznych (async await)
Część II: Atrapy obiektów
- Testowanie zależności – atrapy obiektów
- Moq cz. 1 – Wstęp
- Moq cz. 2 – Argument Matching, Verify, Callback
- FakeItEasy
- NSubstitute
- Mock, stub, fake, spy, dummy
- Mockowanie DateTime.Now, random, static, itp.
- Rodzaje frameworków do tworzenia atrap
Część III: Teoria
- Pokrycie kodu testami (Code Coverage)
- Czy to się opłaca?
- Czy pisać testy jednostkowe do istniejącego kodu (legacy code)?
- Otwarte pytania
Pozostałe
- Cytaty o TDD
- Lista narzędzi i frameworków do testowania (TDD / BDD / ATDD / itd.) dla .NET
- Automatyczne generowanie testów jednostkowych: IntelliTest
- „Płynne asercje”, czyli jak ułatwić sobie życie korzystając z Fluent Assertions?
- TDD: Technika, metoda, metodologia czy metodyka?
- Assert.Multiple