Partager via


Test Modes

TAEF fournit plusieurs modes de test qui modifient le comportement d’exécution des tests de différentes manières. Assurez-vous que vous êtes familiarisé avec l’exécution de base de TAEF, consultez Création de tests et exécution de tests, avant de passer à cette section.

Note: Les modes de test ne sont pas compatibles les uns avec les autres ; Un seul mode de test peut être activé pendant une série de tests donnée.

Les modes de test suivants sont actuellement fournis par TAEF :

Mode test de boucle

Le « mode test en boucle » fournit des fonctionnalités simples pour itérer des tests individuels ou des séries de tests entières. Le mode test en boucle est idéal pour vérifier la robustesse de l’automatisation des tests, ou pour obtenir un stress facile ou une automatisation à long terme.

Le mode test de boucle est activé en spécifiant l’option de commande /testmode :loop. Il existe deux autres paramètres facultatifs qui contrôlent le comportement spécifique :

/Loop :<loopNum>
Contrôle le nombre de fois où l’exécution entière est exécutée (valeur par défaut : 1).

/LoopTest :<loopTestNum>
Contrôle le nombre de fois où chaque test de l’exécution est exécuté (valeur par défaut : 10).

Le diagramme ci-dessous montre comment TAEF représente une série de tests comprenant un fichier de test unique, contenant une seule classe de test, qui contient deux méthodes de test :

Diagramme montrant le flux d’exécution sous TAEF avec le paramètre « looptest ».

Les flèches du diagramme montrent le flux d’exécution sous TAEF ; montrant comment TAEF exécute les montages d’installation, puis les tests eux-mêmes et les montages de nettoyage appropriés sont exécutés une fois les tests terminés. La valeur « looptest » fait que TAEF itérera autour des méthodes de test elles-mêmes, soit la plus petite étendue possible. Notez que l’installation et le nettoyage du test ne sont pas exécutés. Le même comportement se produit également pour les tests pilotés par les données : la valeur « looptest » contrôle la boucle au niveau de la « méthode de test ».

Parfois, il n’est pas possible d’effectuer une boucle autour de la méthode de test, et c’est là que le paramètre « loop » peut être utilisé. Le diagramme ci-dessous montre comment TAEF représente une série de tests comprenant deux fichiers de test, chaque fichier contenant une seule classe de test et chaque classe de test contenant une seule méthode de test :

Diagramme illustrant le flux d’exécution sous TAEF avec le paramètre « loop ».

Le paramètre 'loop' contrôle la boucle dans la plus grande étendue possible ; la totalité de l’exécution. Si vous spécifiez un seul fichier de test à Te.exe, ou si vous avez plusieurs fichiers de test, l’exécution entière est bouclé le nombre de fois spécifié.

Mode test de contrainte

Le mode de test « Stress » pour TAEF permet aux utilisateurs d’exécuter des tests dans un environnement « stress ». En activant le mode test de contrainte via l’option de commande « /testmode :stress », le comportement suivant est activé :

  1. Te.exe s’exécute indéfiniment : Te.exe nécessite l’envoi de Ctrl+C à l’invite de commandes ou l’arrêt d’un message WM_CLOSE à sa fenêtre masquée.

  2. Te.exe itère sur le premier « groupe » de tests qu’il exécute : pour éviter de charger les fichiers suivants pendant une exécution, Te.exe itère sur le premier « groupe » de tests qu’il exécute. Notez les points suivants :

    1. Si vous spécifiez plusieurs fichiers de test à l’invite de commandes, sans sélection, seul le premier fichier de test est exécuté.
    2. Si plusieurs fichiers de test ainsi qu’une requête de sélection sont spécifiés à l’invite de commandes, seuls les tests du premier fichier de test où les critères de sélection sont satisfaits sont exécutés.
    3. Si un fichier de test piloté par les données au niveau du module est spécifié, la première combinaison de paramètres pilotés par les données exécutée est bouclé.
  3. Un « enregistreur de contraintes » est activé : pour réduire la quantité de ressources que la journalisation consommerait, Te.exe bascule vers un enregistreur d’événements de sortie minimal :

    • Seules les erreurs sont écrites dans la console . Aucune autre entrée de journal n’est écrite.
    • Toutes les 60 secondes, l’enregistreur d’événements génère le nombre actuel de passes/échecs dans la console.
    • Chaque seconde, l’enregistreur d’événements génère un seul « . » pour montrer que Te.exe fonctionne toujours.

Lors de l’exécution en mode test de contrainte, vous devez également spécifier le commutateur « /inproc », ce qui signifie que toutes les exécutions de contrainte s’exécutent dans le processus de Te.exe. Cette restriction supprime la nécessité pour TAEF de lancer et de gérer le processus de bac à sable distinct pour l’exécution, réduisant ainsi les échecs de test dus à des échecs d’allocations de mémoire.