Sobes.tech
Junior — Middle

Kuidas kirjutatakse üksuse- ja integratsiooniteste Go keeles?

sobes.tech AI

Vastus AI-lt

Go keeles kasutatakse testing paketti üksuste ja integreerimistestide kirjutamiseks.

  • Üksustestid kontrollivad üksikuid funktsioone või meetodeid isoleeritult.
  • Integreerimistestid kontrollivad mitme komponendi vahelist koostööd või tööga seotud väliste ressurssidega.

Üksustesti näide:

package mypackage

import "testing"

func TestSum(t *testing.T) {
    got := Sum(2, 3)
    want := 5
    if got != want {
        t.Errorf("Sum(2, 3) = %d; want %d", got, want)
    }
}

Integreerimistestide jaoks saab kasutada eraldi faile _integration_test.go lõpuosaga ning neid saab eraldi käivitada, näiteks lipuga -tags=integration.

Samuti kasutatakse sageli mock objekte või testandmebaase väliste sõltuvuste simuleerimiseks.

Testide käivitamine:

go test ./...  # Käivitab kõik testid

Sellisel viisil pakub Go lihtsat ja sisseehitatud mehhanismi testide kirjutamiseks ja käivitamiseks.