Go

Testing

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

22 gespreksvragen·
Mid-Level
1

Wat is de naamgevingsconventie voor een testbestand in Go?

Antwoord

In Go moet een testbestand het achtervoegsel _test.go hebben en in hetzelfde package staan als de geteste code. Om bijvoorbeeld main.go te testen, maak je main_test.go aan. Door deze conventie kan het commando go test testbestanden automatisch vinden zonder extra configuratie.

2

Wat is de juiste signatuur van een testfunctie in Go?

Antwoord

Een testfunctie in Go moet beginnen met Test, één parameter van het type *testing.T accepteren en niets teruggeven. De naam moet met een hoofdletter beginnen om geëxporteerd te worden. Bijvoorbeeld func TestAdd(t *testing.T). Met de parameter t kun je fouten melden met t.Error, t.Fail, t.Fatal, enz.

3

Wat is het verschil tussen t.Error en t.Fatal?

Antwoord

t.Error markeert de test als mislukt maar zet de testuitvoering voort, waardoor meerdere fouten kunnen worden gedetecteerd. t.Fatal markeert de test als mislukt en stopt de uitvoering van de huidige test onmiddellijk. Gebruik t.Fatal wanneer een kritieke voorwaarde faalt en doorgaan geen zin heeft, zoals een setup-fout of een onverwachte nil-waarde.

4

Hoe voer je alleen een specifieke test genaamd TestAdd uit?

5

Wat is een table-driven test in Go?

+19 gespreksvragen

Beheers Go voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis