Maison > développement back-end > Golang > Comment puis-je accéder aux arguments de ligne de commande dans les tests Go ?

Comment puis-je accéder aux arguments de ligne de commande dans les tests Go ?

DDD
Libérer: 2024-12-06 22:24:13
original
164 Les gens l'ont consulté

How Can I Access Command Line Arguments in Go Tests?

Obtention d'arguments de ligne de commande dans les tests Go

Lors de l'exécution de tests avec go test, la fonction principale n'est pas exécutée. Cela soulève la question de savoir comment accéder aux arguments de ligne de commande dans les cas de test.

Une approche courante consiste à utiliser le package flags et à vérifier manuellement les arguments dans chaque test ou fonction. Cependant, cette méthode peut devenir fastidieuse et sujette aux erreurs à mesure que le nombre de tests augmente.

Au lieu de cela, il est possible d'utiliser des variables d'environnement ou des fonctions d'initialisation pour accéder aux arguments de ligne de commande dans les tests.

Variables environnementales

Les variables environnementales constituent un moyen pratique de transmettre des données de configuration aux environnements de test. Pour accéder à une variable d'environnement dans un test, utilisez simplement la fonction os.Getenv :

envSetting := os.Getenv("TEST_ENV")
Copier après la connexion

Fonctions d'initialisation

Alternativement, vous pouvez définir une fonction d'initialisation à définir variables globales basées sur des arguments de ligne de commande. La fonction init() est exécutée avant tout cas de test, ce qui la rend idéale à des fins d'initialisation :

func init() {
    flags.Parse()
    myEnv = *envFlag
}
Copier après la connexion

En utilisant ces techniques, vous pouvez accéder efficacement aux arguments de ligne de commande dans les tests Go et maintenir la séparation entre le test et le principal. fonctionnalité.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal