Sobes.tech
Junior — Middle

Pouvez-vous parler du processus de test que vous avez utilisé dans votre dernier projet?

sobes.tech IA

Réponse de l'IA

Dans le dernier projet en Go, j'ai utilisé des tests unitaires avec le package testing. Pour chaque composant clé, j'ai écrit des tests individuels vérifiant le bon fonctionnement des fonctions avec différentes données d'entrée. J'ai également utilisé des tableaux de tests pour faciliter la vérification de plusieurs cas.

Pour les tests d'intégration, j'exécutais des tests vérifiant l'interaction de plusieurs composants, par exemple, en travaillant avec une base de données via des objets simulés.

Exemple d'un test simple:

func TestSum(t *testing.T) {
    tests := []struct {
        a, b, expected int
    }{
        {1, 2, 3},
        {5, 5, 10},
        {-1, 1, 0},
    }

    for _, tt := range tests {
        result := Sum(tt.a, tt.b)
        if result != tt.expected {
            t.Errorf("Sum(%d, %d) = %d; want %d", tt.a, tt.b, result, tt.expected)
        }
    }
}

J'ai également utilisé go test -cover pour évaluer la couverture du code par les tests et CI/CD pour lancer automatiquement les tests lors des commits.