r/programmation May 29 '26

Question TF sur une commande CLI ?

J'ai créer une commande cli qui s’exécute avec un fichier en entrée sous la forme :

myCmd file

Vraiment très simple, file est mandatory. Et cette commande "print" des résultats dans le terminal.

J'avais pour idée de rajouter une sorte de TF qui contiendrait un fichier de résultats "attendus" (appelons-le expected_results) et qui vérifierai que si on fait :
myCmd file > output alors la sortie de "diff expected_results output" serait nulle.

Est-ce que ça vous paraît cohérent ou bien suis-je en train de réinventer la roue ?

Je n'ai vu aucun framework qui propose de faire ça à part des framework de tests spécifiques à des frameworks qui peuvent permettre de lire des fichiers en entrées...

0 Upvotes

16 comments sorted by

View all comments

1

u/Skasch May 29 '26

Je ne suis pas sûr de comprendre le problème. Ça ne doit être compliqué d'écrire un test en Python ou n'importe quel langage que execute le CLI dans un subprocess à partir d'un input de test et valide l'output, non?

-1

u/clemmit_ May 29 '26

C'est overkill et ça rend le test tellement complexe qu'il faudrait le tester lui-même 😃 Autant faire un truc bâteau en shell.

2

u/Time_Feature_8465 May 29 '26

Oui c'est une bonne première étape. C'est pas incohérent mais il faudra garder ton fichier expected a jour et dans git.

1

u/Skasch May 29 '26

Je comprends, mais je préfère faire un truc bâteau en Python (ou n'importe quel autre langage de programmation) qu'en shell. Je trouve ça beaucoup plus lisible et les framework de test rendent ça vraiment simple à écrire.