C'est le fil de commande qui peut être exécuté dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
fil - test de scénario des outils de ligne de commande Unix
SYNOPSIS
fil [--autoriser les étapes manquantes] [--pas d'étapes manquantes] [--cd-repdonnées] [--no-cd-datadir]
[--config=DOSSIER] [--dump-config] [--dump-setting-names] [--generate-manpage=MODÈLE] [-h]
[--Aidez-moi] [--aide-à tous] [--list-config-files] [--version] [--no-default-configs]
[--dump-memory-profil=MÉTHODE] [--env=NOM = VALEUR] [--Journal=DOSSIER] [--log-keep=N]
[--niveau de journal=NIVEAU] [--log-max=TAILLE] [--log-mode=MODE] [--memory-dump-intervalle=SECONDS]
[--output=DOSSIER] [-q] [--silencieux] [--no-silencieux] [--require-hypothèses]
[--no-require-hypothèses] [-rSCÉNARIO] [--Cours=SCÉNARIO] [--coquille=SHELL] [--shell-arg=ARG]
[-sBIBLIOTHÈQUE SHELL] [--shell-bibliothèque=BIBLIOTHÈQUE SHELL] [--instantané] [--no-instantané]
[--répertoire temp=DIR] [--horaires] [--no-timing] [-v] [--verbeux] [--non-verbeux] [-n] [--pas d'action]
[- à sec] [--faire semblant] [--non-non-acte] [--pas de tirage à sec] [--sans faire semblant] [DOSSIER] ...
DESCRIPTION
fil est un outil de test de scénario : vous écrivez un scénario décrivant comment un utilisateur utilise votre
logiciel et ce qui doit arriver, et exprimer, en utilisant une syntaxe très légère, le scénario
de telle sorte qu'il puisse être testé automatiquement. Le scénario a un simple, mais strict
structure:
DONNÉ une certaine configuration pour le test
QUAND la chose qui doit être testée arrive
ALORS les post-conditions doivent être vraies
A titre d'exemple, considérons un scénario de test très court pour vérifier qu'un programme de sauvegarde
fonctionne, au moins pour un cas simple.
Les sauvegardes de SCÉNARIO peuvent être restaurées
DONNÉ des données en direct dans un répertoire
ET un référentiel de sauvegarde vide
QUAND une sauvegarde est effectuée
ALORS le cas de données être restauré
ENFIN nettoyer
Notez l'ajout de AND : vous pouvez avoir plusieurs instructions GIVEN, WHEN et THEN. L'ET
mot-clé rend le texte plus lisible. SCENARIO est également nécessaire, et donne le titre.
ENFIN est pour les nettoyages. Les étapes FINALLY seront exécutées, que le scénario
réussit ou non.
Les scénarios sont censés être écrits dans un langage quelque peu lisible par l'homme. Cependant, ils sont
pas de texte de forme libre. En plus de la structure DONNÉ/QUAND/ALORS, le texte de chacun des
les étapes nécessitent une implémentation exécutable par ordinateur. Cela se fait en utilisant IMPLEMENTS.
Le scénario de sauvegarde ci-dessus peut être implémenté comme suit :
MISE EN OEUVRE DONNÉ certaines données en direct dans un répertoire
rm -rf "$ TESTDIR/données"
mkdir "$TESTDIR/données"
echo foo > "$TESTDIR/data/foo"
IMPLANTS DONNÉS à un référentiel de sauvegarde vide
rm -rf "$TESTDIR/dépôt"
mkdir "$TESTDIR/dépôt"
MISE EN OEUVRE QUAND une sauvegarde est effectuée
backup-program -r "$TESTDIR/repo" "$TESTDIR/data"
MISE EN OEUVRE ALORS les données peuvent être restaurées
mkdir "$TESTDIR/restauré"
restaurer-programme -r "$TESTDIR/repo" "$TESTDIR/restauré"
diff -rq "$TESTDIR/données" "$TESTDIR/restauré"
MISE EN OEUVRE ENFIN le nettoyage
écho rien à faire, en fait
Chaque "IMPLEMENTS GIVEN" (ou WHEN, THEN, FINALLY) est suivi d'une expression régulière sur
la même ligne, puis un script shell qui est exécuté pour implémenter toute étape qui
correspond à l'expression régulière. L'implémentation peut extraire des données du match comme
bien : par exemple, l'expression régulière peut permettre de spécifier une taille de fichier.
L'exemple ci-dessus est un peu idiot, bien sûr : pourquoi s'efforcer d'obscurcir les différents
pas? La réponse est que les différentes étapes, mises en œuvre à l'aide d'IMPLEMENTS, peuvent être
combinés de plusieurs manières, pour tester différents aspects du programme testé.
De plus, en faisant en sorte que les descriptions des étapes soient du texte en langage humain,
expressions, la plupart des tests peuvent, espérons-le, être écrits et compris par des non-
programmeurs. Quelqu'un qui comprend ce qu'un programme doit faire, pourrait écrire des tests sur
vérifier son comportement. La mise en œuvre des différentes étapes doit être mise en œuvre par
un programmeur, mais étant donné un ensemble d'étapes bien conçues, avec suffisamment de flexibilité dans leur
implémentation, qu'une assez bonne suite de tests peut être écrite.
Les commandes shell d'une section IMPLEMENTS sont exécutées dans le répertoire dans lequel l'utilisateur a exécuté
fil. La variable d'environnement SRCDIR est défini sur le chemin d'accès complet à ce
répertoire.
OPTIONS
--autoriser les étapes manquantes
permettre aux scénarios de référencer des étapes qui n'existent pas, en les avertissant, mais
sinon ignorer les scénarios
--pas d'étapes manquantes
opposé de --allow-missing-steps
--cd-repdonnées
passer à DATADIR lors de l'exécution de commandes
--no-cd-datadir
opposé de --cd-datadir
--env=NOM = VALEUR
ajouter NAME=VALUE à l'environnement lors de l'exécution des tests
--generate-manpage=MODÈLE
SUPPRESSION DE L'AIDE
-h, --Aidez-moi
afficher ce message d'aide et quitter
--output=DOSSIER
écrire la sortie dans FILE, au lieu de la sortie standard
-q, --silencieux
soyez silencieux, évitez les rapports d'avancement, n'affichez que les erreurs
--no-silencieux
opposé de --quiet
--require-hypothèses
exiger ASSUMER de toujours réussir
--no-require-hypothèses
opposé de --require-assumptions
-r, --Cours=SCÉNARIO
exécuter uniquement SCÉNARIO (cette option peut être répétée)
--coquille=SHELL
exécuter IMPLEMENTS à l'aide de SHELL
--shell-arg=ARG
utiliser ARG lors de l'exécution du shell
-s, --shell-bibliothèque=BIBLIOTHÈQUE SHELL
inclure une bibliothèque shell pour les sections IMPLEMENTS à utiliser
--instantané
faire des instantanés du répertoire de travail de test après chaque étape du scénario ; vous probablement
voulez l'utiliser avec --tempdir
--no-instantané
opposé de --snapshot
--répertoire temp=DIR
utiliser DIR comme répertoire temporaire pour les tests ; il doit être vide ou ne pas exister
--horaires
signaler l'heure de l'horloge murale pour chaque scénario et étape
--no-timing
opposé de --timings
-v, --verbeux
faire en sorte que les rapports d'avancement soient plus détaillés ("mur de texte"), au lieu d'une ligne
informations d'état ; celui-ci s'allume automatiquement s'il n'y a pas de borne
--non-verbeux
opposé de --verbose
--version
afficher le numéro de version du programme et quitter
-n, --pas d'action, - à sec, --faire semblant
n'exécutez aucun test, imprimez simplement ce qui serait exécuté
--non-non-acte, --pas de tirage à sec, --sans faire semblant
opposé de --no-act
Configuration fichiers et Paramétres
--config=DOSSIER
ajouter FILE aux fichiers de configuration
--dump-config
écrire toute la configuration actuelle
--dump-setting-names
SUPPRESSION DE L'AIDE
--aide-à tous
afficher toutes les options
--list-config-files
SUPPRESSION DE L'AIDE
--no-default-configs
effacer la liste des fichiers de configuration à lire
Journal
--Journal=DOSSIER
écrire les entrées de journal dans FILE (la valeur par défaut est de ne pas écrire du tout les fichiers journaux) ; utiliser "syslog"
pour se connecter au journal système, "stderr" pour se connecter à la sortie d'erreur standard ou "aucun" pour
désactiver la journalisation
--log-keep=N
conserver les N derniers journaux (10)
--niveau de journal=NIVEAU
log au NIVEAU, l'un des debug, info, warning, error, critic, fatal (par défaut : debug)
--log-max=TAILLE
faire pivoter les journaux plus grands que SIZE, zéro pour jamais (par défaut : 0)
--log-mode=MODE
définir les autorisations des nouveaux fichiers journaux sur MODE (octal ; par défaut 0600)
Performance
--dump-memory-profil=MÉTHODE
faire des vidages de profilage de mémoire à l'aide de METHOD, qui est l'un des suivants : none, simple ou meliae
(par défaut : simple)
--memory-dump-intervalle=SECONDS
faire des vidages de profilage de mémoire à au moins SECONDES d'intervalle
ENVIRONNEMENT
DATADIR
Chemin d'accès complet vers un répertoire temporaire, dans lequel les tests peuvent utiliser
des dossiers. Le répertoire temporaire est supprimé à la fin de l'exécution du test, sauf si
l'utilisateur spécifie le contraire avec --snapshot.
SRCDIR Chemin d'accès entièrement qualifié vers le répertoire dans lequel l'utilisateur s'est exécuté fil. C'est
utile lorsque les tests veulent changer de répertoire.
EXEMPLE
Courir fil sur tous les scénarios de votre répertoire actuel :
fil *.scénario
Tous les fichiers seront traités ensemble comme s'il s'agissait d'un seul fichier.
Pour ajouter une bibliothèque shell à inclure lors de l'exécution d'une section IMPLEMENTS :
fil --shell-library mylib.sh *.scenario
Vous pouvez répéter --shell-bibliothèque autant de fois que nécessaire.
Utilisez du fil en ligne en utilisant les services onworks.net