Bash:
Rédaction de tests

Comment faire :

Bash n’a pas de cadre de test intégré, mais vous pouvez écrire des fonctions de test simples. Pour des tests plus sophistiqués, des outils tiers comme bats-core sont populaires.

Exemple de Test Basique en Bash Pur :

function test_example_function {
  result=$(your_function 'test_input')
  expected_output="expected_output"
  
  if [[ "$result" == "$expected_output" ]]; then
    echo "Test réussi."
    return 0
  else
    echo "Test échoué. Attendu '$expected_output', obtenu '$result'"
    return 1
  fi
}

# Invocation de la fonction de test
test_example_function

Sortie d’exemple :

Test réussi.

Utilisation de bats-core pour les Tests :

Premièrement, installez bats-core. Cela peut généralement être fait via votre gestionnaire de paquets ou en clonant son dépôt.

Ensuite, écrivez vos tests dans des fichiers .bats séparés.

# Fichier : example_function.bats

#!/usr/bin/env bats

@test "tester l'exemple de fonction" {
  result="$(your_function 'test_input')"
  expected_output="expected_output"
  
  [ "$result" == "$expected_output" ]
}

Pour exécuter vos tests, exécutez simplement le fichier .bats :

bats example_function.bats

Sortie d’exemple :

 ✓ tester l'exemple de fonction

1 test, 0 échecs

Cette approche vous permet d’intégrer facilement les tests dans votre flux de travail de développement, garantissant la fiabilité et la stabilité de vos scripts Bash.