Zig Academy · Lekcja

Pisanie bloków test

Testy znajdują się bezpośrednio obok kodu.

Lekcja 1 z 413 kroki

Pisanie bloków test to bezpłatna lekcja Zig Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Zig Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Zig Academy zawiera 4 lekcji w sumie.

Testy znajdują się w kodzie

W Zig nie potrzebujesz osobnego pliku testów. Blok test znajduje się tuż obok sprawdzanego kodu, w tym samym pliku źródłowym.

Słowo kluczowe test

Test rozpoczyna się od słowa kluczowego test, nazwy w cudzysłowie i bloku. Kompilator zbiera wszystkie te elementy za Ciebie.

test "adds two numbers" {
    // checks go here
}

Nazywaj testy jasno

Ciąg znaków po test jest jego nazwą. Jasna nazwa, taka jak „parses empty input”, pojawia się w raporcie i informuje, co się nie powiodło.

test "parses empty input" {}

Importowanie std do asercji

Większość testów potrzebuje funkcji pomocniczych, dlatego na początku pliku dołącza Pan/Pani bibliotekę standardową za pomocą wywołania @import, a wewnątrz korzysta z std.testing.

const std = @import("std");

Pierwszy rzeczywisty test

Wewnątrz bloku oblicza Pan/Pani wynik i sprawdza go. W tym przypadku expect przechodzi tylko wtedy, gdy warunek logiczny jest prawdziwy.

test "two plus two" {
    try std.testing.expect(2 + 2 == 4);
}

Testy mogą się nie powieść

Funkcje pomocnicze do asercji zwracają błąd, gdy sprawdzenie daje wynik fałszywy. Dlatego należy poprzedzić je słowem try, pozwalając, aby niepowodzenie zakończyło test.

try std.testing.expect(1 == 2);

Testowanie napisanej funkcji

Test zwykle wywołuje jedną z własnych funkcji i sprawdza jej wynik. Funkcja i test mogą znajdować się w tym samym pliku.

fn add(a: i32, b: i32) i32 {
    return a + b;
}

Sprawdzanie wyniku

Teraz należy wywołać tę funkcję z testu i potwierdzić pojedynczym wywołaniem expect, że wynik jest zgodny z oczekiwaniami.

test "add works" {
    try std.testing.expect(add(2, 3) == 5);
}

Wiele testów w jednym pliku

Można umieścić dowolną liczbę bloków test. Każdy z nich działa niezależnie, więc niepowodzenie jednego nie blokuje pozostałych.

Testy są kompilowanym kodem

Blok test to zwykły kod Zig, w pełni sprawdzany pod kątem typów. Jeśli się nie kompiluje, uruchamianie testów kończy się, zanim wykona się jakikolwiek kod.

Dlaczego testy inline pomagają

Umieszczanie sprawdzeń obok kodu sprawia, że testy rozwijają się razem z nim. Po zmianie funkcji jej test znajduje się od razu pod ręką i można go zaktualizować.

Szybkie sprawdzenie

Chce Pan/Pani zadeklarować test jednostkowy w pliku źródłowym Zig. Jaka forma jest prawidłowa?

Podsumowanie

Poznał(a) Pan/Pani blok test: nazwany, umieszczony bezpośrednio w kodzie i w pełni kompilowany kod Zig, który sprawdza się za pomocą try. Testy znajdują się tuż obok chronionego przez nie kodu. ✅

Bezpłatny start

Ucz się Zig dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Pisanie bloków test” jest bezpłatna?

Tak — pełny tekst „Pisanie bloków test” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Zig Academy, przejdź na CoddyKit PRO. Kurs Zig Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Pisanie bloków test”?

Testy znajdują się bezpośrednio obok kodu. Ćwiczysz Zig Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Zig Academy?

Nie wymagamy żadnego doświadczenia. Zig Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Pisanie bloków test”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Zig Academy?

Tak. Każda lekcja Zig Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Pisanie bloków test
  2. Asercje za pomocą std.testing
  3. Testing Allocator wykrywa wycieki
  4. Uruchamianie i filtrowanie testów
← Powrót do Zig Academy