Tests unitaires pour script avec Bats

Magazine
Marque
GNU/Linux Magazine
Numéro
232
Mois de parution
décembre 2019
Spécialité(s)


Résumé

Dans la maintenance applicative, mais aussi dans l’ensemble du cycle de vie d’un projet, les suites de tests unitaires sont la clé de voûte de la stabilité du logiciel. Ils permettent la détection, dès leur introduction, de toute forme de régression ou de changement de comportement et facilitent ainsi non seulement sa maintenance, mais aussi son évolution. Si c’est tellement important et utile, pourquoi n’ajoutons-nous pas de telles suites pour tester nos scripts « Shell » ? Démonstration avec l’outil Bats !


Les scripts Shell sont souvent la clé pour l’automatisation de nombreuses tâches, souvent critiques. Malheureusement, cette position clé les rend aussi difficiles à améliorer, car tout changement peut soudainement modifier le comportement à l’exécution. Ce manque de flexibilité explique souvent que les scripts ne sont pas maintenus et même parfois empêche d’améliorer l’infrastructure, car on refuse, pour les mêmes raisons, de leur ajouter des fonctionnalités.

Le problème n’est pas spécifique au Shell, mais dans d’autres langages, on dispose d’une série de tests unitaires, qui peuvent assurer que les modifications ou les améliorations effectuées sur le projet n’affectent pas son comportement à l’exécution. Ces suites de tests permettent donc de modifier et même de réécrire des parties entières du logiciel, sans craindre de régression.

C’est méconnu, mais en fait, le Shell dispose aussi d’outils similaires et celui que nous allons évoquer aujourd…

La suite est réservée aux abonnés. Il vous reste 97% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

« Day One Operations » avec Ansible : maintenance et évolution

Magazine
Marque
SysOps Pratique
Numéro
152
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Dans un précédent article [1], nous avons commencé à aborder la thématique des « Day One Operations » avec Ansible. Nous continuons dans ce nouvel opus sur notre lancée, en évoquant d’autres cas d’utilisation de l’outil d’automatisation dans le contexte de la maintenance et l’évolution d’une infrastructure logicielle existante et complexe.

« Day One Operations » avec Ansible

Magazine
Marque
SysOps Pratique
Numéro
151
Mois de parution
septembre 2025
Spécialité(s)
Résumé

Si Ansible facilite l’installation et le maintien en condition opérationnelle d’une infrastructure logicielle, l’outil peut aller encore plus loin et devenir un atout précieux pour continuer de faire évoluer son système au cours du temps. Voyons ceci en détail, et par la pratique, dans ce premier article sur le thème « Day One operations » avec Ansible !

Programmation robuste avec Bash

Magazine
Marque
GNU/Linux Magazine
Numéro
277
Mois de parution
septembre 2025
Spécialité(s)
Résumé

« Développer avec Bash ? Impossible, ce n’est pas un véritable langage de programmation ! Et ce genre de scripts sont bien trop fragiles ! » Voilà des idées reçues sur l’un des plus célèbres interpréteurs Shell que nous allons tenter, aujourd’hui, dans cet article, de faire disparaître pour de bon !

Résolution d'incident automatique avec Event-Driven Ansible

Magazine
Marque
SysOps Pratique
Numéro
149
Mois de parution
mai 2025
Spécialité(s)
Résumé

Et si Ansible vous permettait, non seulement de déployer et maintenir en condition opérationnelle votre infrastructure logicielle, mais également de réagir à des incidents ou des évènements au sein de vos systèmes ? Découvrons comment le faire à l’aide d’Event-Driven Ansible !

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture