Maison > développement back-end > Golang > Quelle est la meilleure stratégie de dénomination des packages pour les tests Go ?

Quelle est la meilleure stratégie de dénomination des packages pour les tests Go ?

Barbara Streisand
Libérer: 2024-12-31 14:39:13
original
774 Les gens l'ont consulté

What's the Best Package Naming Strategy for Go Tests?

Nomination appropriée des packages pour les tests dans Go

Lors de l'écriture de tests pour le code Go, il existe plusieurs stratégies pour nommer le package de test. Chaque stratégie offre différents avantages et inconvénients, selon le type de test souhaité.

Stratégie 1 : Utiliser le même nom de package

Dans cette stratégie, le fichier de test utilise le même nom de package que le code testé. Cela permet d'accéder aux identifiants non exportés, ce qui le rend adapté aux tests unitaires qui nécessitent un tel accès. Cependant, cela peut entraîner une fuite des détails des tests dans l'API publique du package.

Stratégie 2 : Utilisation d'un nom de package distinct

Ici, le fichier de test utilise un nom de package différent, généralement avec un suffixe "_test". Cela sépare le code de test du code testé, garantissant que seuls les identifiants exportés sont utilisés. Il est approprié pour les tests en boîte noire, qui se concentrent sur le test des fonctionnalités de l'API publique.

Stratégie 3 : Utiliser une variante avec la notation par points

Cette stratégie est similaire à la stratégie 2, mais le fichier de test importe le package en utilisant la notation par points, par exemple ". 'myfunc'". Cela permet d'accéder aux identifiants non exportés, mais cela permet de séparer le code de test du code testé. Il convient aux tests en boîte blanche tout en maintenant une séparation des préoccupations.

La bibliothèque standard Go utilise un mélange de stratégie 1 et de stratégie 2. La stratégie à utiliser dépend de l'objectif spécifique des tests. Les tests en boîte blanche et en boîte noire peuvent être utiles, nécessitant respectivement l'accès à des identifiants non exportés ou exportés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal