Go

Testing

testing package, test tables, benchmarks, examples, coverage, testify, mocking

22 pytań z rozmów·
Mid-Level
1

Jaka jest konwencja nazewnictwa pliku testowego w Go?

Odpowiedź

W Go plik testowy musi mieć sufiks _test.go i znajdować się w tym samym package co testowany kod. Na przykład, aby przetestować main.go, należy utworzyć main_test.go. Ta konwencja pozwala poleceniu go test automatycznie wykrywać pliki testowe bez dodatkowej konfiguracji.

2

Jaka jest poprawna sygnatura funkcji testowej w Go?

Odpowiedź

Funkcja testowa w Go musi zaczynać się od Test, przyjmować jeden parametr typu *testing.T i nic nie zwracać. Nazwa musi zaczynać się wielką literą, aby była eksportowana. Na przykład func TestAdd(t *testing.T). Parametr t pozwala sygnalizować niepowodzenia za pomocą t.Error, t.Fail, t.Fatal itd.

3

Jaka jest różnica między t.Error a t.Fatal?

Odpowiedź

t.Error oznacza test jako nieudany, ale kontynuuje jego wykonywanie, co pozwala wykryć wiele błędów. t.Fatal oznacza test jako nieudany i natychmiast zatrzymuje wykonywanie bieżącego testu. Używaj t.Fatal, gdy krytyczny warunek wstępny zawiedzie i kontynuacja nie ma sensu, na przykład przy niepowodzeniu setupu lub nieoczekiwanej wartości nil.

4

Jak uruchomić tylko określony test o nazwie TestAdd?

5

Czym jest test table-driven w Go?

+19 pytań z rozmów

Opanuj Go na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo