Cena Netto:
4 659.00 PLN
Brutto: 5 730.57 PLN
Terminy:
Generuj PDF

Zapisz się

Opis

Umiejętności zdobywane podczas kursu:

  • definiowanie asercji testujących oraz grup testów
  • określanie faz testowania i potrzeb testowania na każdym etapie typowego projektu
  • etapy refaktoryzacji kodu i testów
  • określanie wydajności testów i wpływu metodyki TDD na kształt projektu
  • testowanie aplikacji wielowątkowych

Cel

  • stosowanie metodyki TDD w codziennej pracy programisty
  • wykształcenie umiejętności programowania zgodnie z metodyką TDD
  • stosowanie refaktoryzacji w praktycznych projektach

Grupa docelowa:

Kurs jest przeznaczony dla programistów którzy programują w języku C++ na poziomie średnio zaawansowanym lub zaawansowanym i chcą, lub są zobligowani do stosowania metodki TDD w swojej codziennej pracy. Szkolenie zakłada biegłe posługiwanie się mechanizmami języka programowania oraz
koncentruje się na aspektach praktycznych zastosowania biblioteki cppunit. Wybrana biblioteka służy wyłącznie ilustrowaniu założeń metodyki i nie ogranicza uniwersalności przyswajanych umiejętności i wiedzy.

Uwagi:

Czas trwania szkolenia - 3 dni. 
Oferujemy szkolenia w naszych ośrodkach w Warszawie, Wrocławiu, Krakowie, jak i w lokalizacjach wskazanych przez klienta. 
W celu ustalenia szczegółów prosimy o kontakt na osec@osec.pl

Wymagania:

  • biegłe posługiwanie się mechanizmami języka C++ na poziomie średnio zaawansowanym lub zaawansowanym
  • umiejętność pracy w wybranym środowisku IDE
  • uczestnictwo w co najmniej 1 projekcie informatycznym związanym z wytwarzaniem oprogramowania

Konspekt

  1. TDD wprowadzenie
    • rola i cel działania metodyki TDD
    • etapy procesu TDD
    • zyski i straty związane z metodyką TDD
  2. Proces TDD w codziennej pracy programisty
    • wykładnie wprowadzania TDD do pracy programisty
    • warunki zakończenia etapów TDD i często popełnianie błędy
    • poziomy testowania i warunki zakończenia testów na określonych poziomach
  3. Style programowania testów w TDD
    • praktyczne implementowanie testów na przykładzie biblioteki cppunit
    • dostępne asercje
    • klasy i obiekty testujące
    • projektowanie i implementowanie testów
  4. Testowanie stanu i przechowywania danych (ang. persistence)
    • izolowanie testów
    • transakcje
    • specyfika jarzma testującego
  5. Testowanie aplikacji wielowątkowych
    • separowanie funkcjonalności i wielowątkowości
    • synchronizacja testów modułowych
    • testy obciążeniowe obiektów pasywnych
    • synchronizacja wątku testu i wątku aplikacji
  6. Refaktoryzacja kodu
    • zakresy refaktoryzacji
    • koszt i zyski refaktoryzacji
  7. Rodzaje refaktoryzacji kodu i testów
    • refaktoryzacja w klasach i pomiędzy klasami
    • klasyfikacje rodzajów refaktoryzacji
    • narzędzia wspierające refaktoryzację