Réserver une Démo
Pré. Proc.

Testpoints

Testpoints présentent un schéma par lequel les contraintes et les règles régissant le comportement des objets peuvent être extraites du modèle et appliquées à une ou plusieurs applications. Les avantages offerts par des schémas tels que celui-ci sont la tolérance aux changements de code : l'ajout et la soustraction de lignes d'une fonction n'ont aucun effet sur les contraintes qui la régissent. Un autre avantage est que les modifications apportées aux règles de comportement ne nécessitent pas de modification correspondante du code source ; ce qui signifie que rien ne doit être recompilé !

De plus, la possibilité de vérifier plusieurs applications à l'aide d'un seul domaine de test est une question simple plutôt que contraignante. Le domaine Test est à la fois un modèle logique et relationnel ; les contraintes du modèle de classe peuvent être partitionnées avec des coupes Test . Celles-ci peuvent être agrégées simplement dans Ensembles Test et des suites Test à l'aide de connecteurs. En raison du découplage du domaine Test de la base de code, il suffit de choisir des boutons pour exécuter un programme normalement ou l' exécuter pour un domaine Test spécifique. Ce système offre également des avantages pratiques dans la mesure où aucune instrumentation n'est requise. Les résultats Test sont affichés dans la fenêtre de rapport pendant l' exécuter , en temps réel, pendant l'exécution du programme. Ces résultats peuvent être conservés et examinés à tout moment dans la dialogue « Détails Test » ou à l'aide des fonctionnalités de documentation d' Enterprise Architect .

The image below shows the rich tapestry of features available in Enterprise Architect's test domain model, a dynamic medium providing runtime visualization of test case execution

Fonctionnalités

Fonctionnalité

Détails

Voir aussi

Composition Testpoint

La composition Testpoint est effectuée à l'aide de la fenêtre Testpoints . La fenêtre Testpoints est contextuelle et affiche le domaine Test de l'élément sélectionné dans la fenêtre Navigateur ou diagramme . La sélection d'une seule classe affiche la structure de la classe. Une icône en forme de crayon s'affiche en regard des classes et des méthodes qui ont des contraintes existantes.

Lorsque vous sélectionnez un Test coupe, d'ensemble ou Test suite, la fenêtre Testpoints affiche la structure complète du domaine, y compris toutes les classes qui composent le domaine. Note : vous pouvez parcourir la hiérarchie du domaine à l'aide du volet « Navigation » sur la droite. Testpoints sont composés sous forme d'expressions, à l'aide des noms de variables des membres de la classe. Le raccourci Intelli-sense Ctrl+Espace est disponible dans l'éditeur pour vous aider à les trouver. Les expressions qui donnent la valeur True sont considérées comme une réussite. Le retour de False est considéré comme un échec.

The image below shows results from a process running under a test domain in Enterprise Architect

Vous pouvez ajouter ou modifier un invariant existant en double-cliquant sur la classe.

Vous pouvez ajouter ou modifier une pré-condition ou une post-condition existante de la même manière en double-cliquant sur la méthode.

Un double-clic sur un Testpoint affichera automatiquement le code source s'il est disponible.

Il est préférable d'ajouter des conditions de ligne à partir de l'éditeur de code à l'aide de ses menus contextuels.

Cette image représente une condition préalable dans le domaine Test .

An example of composing a precondition in Enterprise Architects Test Domain system.

La Fenêtre Testpoints Éditeur Testpoints

Déclarations de trace de Testpoint

Chaque Testpoint peut avoir sa propre instruction Trace. L'instruction Trace est un message dynamique qui peut référencer des variables dans son object ou sa portée locale. Elles sont générées lors de l'évaluation d'un test. Elles peuvent être configurées pour être générées à chaque fois qu'une contrainte est évaluée, ou plus généralement lorsqu'un test a échoué. Les instructions Trace peuvent être dirigées vers l'onglet « Testpoints » de la fenêtre Sortie système ou vers un fichier externe. Vous pouvez configurer cela dans n'importe quel script Analyzer.

Déclarations de trace La Fenêtre de Sortie du Système Gestion Scripts d'Analyseur

Composition du domaine Test

Le diagramme de domaine Test est un support dynamique dans lequel Testpoints sont assemblés pour tester les cas d'utilisation. Les cas d'utilisation dans un diagramme de domaine Test sont fournis dans trois stéréotypes différents : Test Cut, Ensemble de Test et Suite de Test . La gestion du domaine est aussi simple que modélisation sur n'importe quel diagramme . La boîte à outils et les menus contextuels donnent accès à tous les artefacts du domaine de Test . En bref, Testpoints de plusieurs classes sont agrégés dans Ensembles Test . Ensembles Test sont ensuite liés pour former des suites Test . Les coupes Test et Ensembles Test sont des ressources réutilisables. Lier le même Ensemble de Test à une ou plusieurs suites Test est une question de dessin de connecteurs.

Test Domain diagram defining tests and test sets in Sparx Systems Enterprise Architect.

Boîte à outils du domaine Test Coupe Test Ensemble de Test Suite de Test Diagramme Domaine de Test

Domaine Test et Modèle de classe

Il est rare qu'un cas d'utilisation implique toutes les méthodes d'une seule classe. Il est très probablement réalisé à l'aide d'une variété de méthodes provenant de classes collaboratives. Nous appelons ce sous-ensemble de méthodes une « coupe », et l'artefact de coupe Test est l'outil que nous utilisons pour effectuer ces coupes. La fenêtre Testpoints s'adaptera en fonction du contexte, pour être celle d'un domaine Test ou d'un élément de classe. Cette image montre la fenêtre Testpoints lorsqu'une coupe Test a été sélectionnée. Note les cases à cocher, qui ne sont visibles que pour une coupe Test . Elles désignent les méthodes (coupures Test ) qui contribuent à un Ensemble de Test . Dans cet exemple, le domaine Test a été généré par l' Analyseur d'Exécution , qui a effectué le travail d'identification des méthodes pour nous.

Aggregating test cases across multiple classes to create a Testcut that take part in any Enterprise Architect Test Domain

Évaluation Testpoint

La fenêtre Testpoints est utilisée pour évaluer les domaines Test . La fenêtre dispose d'une barre d'outils pour démarrer ou se connecter à l'application cible. Le domaine à tester est toujours reflété par l'élément qui a un contexte, donc si vous sélectionnez une classe, la fenêtre affichera uniquement la structure de la classe et Testpoints de cette classe. Si vous sélectionnez une Suite de Test , la fenêtre affichera toute la hiérarchie du domaine et tous les Testpoints qu'elle contient. Cliquer sur le bouton Exécuter chargera le domaine Testpoint dans l' Analyseur d'Exécution , qui évaluera, collectera et mettra à jour la fenêtre de rapport au fur et à mesure que les cas d'utilisation réussissent ou échouent à chaque test. Les détails exacts de chaque type de contrainte et le moment et la manière de la capture de cette contrainte sont les suivants :

  • Un invariant de classe est évalué par l'analyseur chaque fois qu'une méthode appelée sur un object de ce type de classe est terminée ; l'invariant sert à tester que l'état d'un object conforme est à la fois connu et autorisé
  • Les conditions préalables sont évaluées immédiatement avant l'appel d'une opération
  • Les post-conditions sont évaluées (en même temps qu'un invariant de classe) lorsque la méthode est terminée
  • Les conditions de ligne sont évaluées si et quand leur ligne de code spécifique entre dans le champ d'application pendant l'exécution du programme
Contraintes Testpoint