Sobes.tech
Junior — Middle

Πώς πραγματοποιείται η συγγραφή μονάδων και ολοκληρωμένων δοκιμών στη γλώσσα Go;

sobes.tech AI

Απάντηση από AI

Στο Go, χρησιμοποιείται το πακέτο testing για τη συγγραφή μονάδων και ολοκληρωμένων δοκιμών.

  • Μονάδες δοκιμών ελέγχουν μεμονωμένες συναρτήσεις ή μεθόδους απομονωμένα.
  • Ολοκληρωμένες δοκιμές ελέγχουν την αλληλεπίδραση πολλαπλών συστατικών ή τη δουλειά με εξωτερικούς πόρους.

Παράδειγμα μονάδας δοκιμής:

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)
    }
}

Για ολοκληρωμένες δοκιμές, μπορούν να χρησιμοποιηθούν αρχεία με το επίθημα _integration_test.go και να εκτελεστούν ξεχωριστά, π.χ., με τη σημαία -tags=integration.

Επίσης, συχνά χρησιμοποιούνται αντικείμενα mock ή βάσεις δεδομένων δοκιμών για την προσομοίωση εξωτερικών εξαρτήσεων.

Εκτέλεση δοκιμών:

go test ./...  # Εκτελεί όλες τις δοκιμές

Έτσι, το Go παρέχει έναν απλό και ενσωματωμένο μηχανισμό για τη συγγραφή και εκτέλεση δοκιμών.