Testowanie systemu jest bardzo istotną częścią procesu jego wytwarzania – pozwala na sprawdzenie, czy nasza aplikacja działa poprawnie i czy spełnia wymagania. W wielu współcześnie używanych językach programowania wsparcie testowania nie jest częścią ich definicji i jest dostarczane z zewnątrz – najczęściej w postaci jakiejś mutacji frameworka xUnit. W Go jego odpowiednik, pakiet testing, jest częścią biblioteki standardowej, a dostarczane z toolchainem narzędzia pozwalają na zarządzanie testami. W tym artykule, skierowanym zarówno do obecnych, jak i potencjalnych programistów języka Go, przyjrzymy się tematowi testów jednostkowych...
Zagadnienia poruszane w tym artykule:
- Co i dlaczego testujemy;
- Podstawy testowania w Go;
- Testy jednostkowe;
- Eksternalizacja danych do testów, setup i teardown;
- Testy tablicowe, subtesty, zrównoleglanie;
- Pokrycie kodu testami;
- Inne twarze pakietu testing: fuzzing i benchmarki.
Artykuł pochodzi z magazynu Programista nr 107 (2/2023). Magazyn jest z przełomu kwietnia i maja 2023 roku. Szczegółowy spis treści wydania nr 104: https://programistamag.pl/programista-2-2023-107/
Autorem artykułu jest Maciej Norberciak. Od początku kariery w przemyśle zajmuje się systemami wbudowanymi w telekomunikacji, od ośmiu lat jako architekt w Nokii. Doktor nauk technicznych w dziedzinie sztucznej inteligencji. Mentor, mówca, trener. W chwilach wolnych od bycia tatą lubi się uczyć nowych rzeczy, głównie języków obcych, i jeździć na rowerze.