Skip to main content
Verify the version tags to ensure you are consuming the intended content or, complete the latest version.

Tests unitaires

Une mauvaise configuration des règles dans une application peut entraîner des retards dans le traitement des dossiers. Lorsqu’une erreur se produit, il est possible que des dossiers doivent être réaffectés par les utilisateurs ou réparés par un administrateur. Prenons par exemple le cas d’un dossier qui doit être routé au service de gestion des commandes. Si le dossier est routé à la place au service de la comptabilité, un comptable doit le rediriger vers le service de gestion des commandes. Le comptable perd du temps à rerouter la tâche, tandis que le service de gestion des commandes n’a pas de dossier à traiter. La réaffectation du dossier entraîne donc un retard pour le client.

error_customer_delay

Pour éviter les erreurs de configuration telles que des tâches mal routées, les développeurs testent leurs applications. La façon la plus simple de tester une application est d’effectuer des tests unitaires sur des règles individuelles. Les tests unitaires permettent la livraison continue des applications en contrôlant la qualité des plus petites unités de fonctionnalité. Dans une application Pega, l’unité la plus petite est une règle individuelle. Le but des tests unitaires est de vérifier que chaque élément de l’application, par exemple une table de décision ou une report definition, fonctionne comme prévu. Le test unitaire réduit le risque de voir une erreur de configuration dans une règle se propager à d’autres règles de l’application et entraîner des retards importants dans le traitement des dossiers.

Utilisez les tests unitaires pour limiter les erreurs de configuration. Prenons l’exemple d’un arbre de décision qui évalue une propriété. Comme le montre l’image suivante, l’application lit la propriété à partir d’une data page issue d’une report definition. En effectuant des tests unitaires des règles individuelles lors de leur configuration, vous vous assurez que chaque règle fonctionne comme prévu. Si l’arbre de décision renvoie un résultat incorrect, alors que la data page contient les bonnes données, vous pouvez déterminer que l’erreur provient de l’arbre de décision.

isolate_cause_of_error

Vérifiez vos connaissances avec l’interaction suivante.

Test unitaire de règles individuelles

Vous pouvez tester une règle avec des données de test que vous indiquez en cliquant sur Actions > Run dans la barre d'outils du formulaire de règles.

Note: Pour certains types de règles, comme celles relatives aux fichiers binaires, Pega ne propose pas d'option de test unitaire. Si la règle ne peut pas faire l'objet d'un test unitaire, l'option Run n'apparaît pas.

L'affichage de la fenêtre  Run Rule varie selon le type de règle. Par conséquent, l'exécution d'une règle varie selon son type. En général, cependant, les règles sont exécutées en utilisant les données d'une page de test que vous définissez.

Lorsque vous exécutez la règle, le système utilise la résolution de règle. Si vous soumettez une règle à un test unitaire et qu'il existe une version supérieure de la règle, le système exécute la version supérieure de la règle.

Enregistrer un test unitaire pour les tests automatisés

Une fois le test exécuté, vous pouvez également le convertir en dossier de test réutilisable que vous pouvez exécuter à tout moment. Un dossier de test identifie une ou plusieurs conditions vérifiables qui permettent de déterminer si une règle renvoie un résultat attendu. La création d'un dossier de test réutilisable prend en charge le modèle de livraison continue, en offrant un moyen de tester les règles sur une base récurrente afin d'identifier les effets des règles nouvelles ou modifiées. Pour plus d'informations sur l'utilisation des dossiers de test unitaire, consultez la rubrique Comprendre les dossiers de test unitaire de Pega Community.

Tip: Vous pouvez automatiquement exécuter un test unitaire enregistré à partir de la règle ou du test unitaire à l’aide de la fonction de test PegaUnit.

Pour créer un dossier de test, vous devez convertir un test dans la fenêtre Run Rule et définir les résultats indiquant un test unitaire abouti. Chaque résultat attendu consiste en une assertion qui décrit une ou plusieurs conditions à tester, ainsi que le résultat attendu pour chaque condition. Les dossiers de test prennent en charge plusieurs types d'assertions conçus pour tester divers aspects de l'exécution des règles. Les assertions disponibles pour un dossier de test varient selon le type de règle testé.

Note: Pour une explication complète concernant les types d’assertions pris en charge et leur utilisation, consultez l’article de Pega Community intitulé Définition des résultats de test attendus avec des assertions.

Quelques exemples d'assertions et des différentes façons dont elles peuvent être utilisées sont fournis dans le tableau suivant :

Type d’assertion Utilisation Exemple
Propriété Teste la valeur de la propriété spécifiée. Nécessite la page sur laquelle la propriété est définie, une opération de comparaison et une valeur de comparaison. pxUrgencyWork est égal à 10
Résultat de décision Teste la valeur renvoyée par une règle de décision. Nécessite des valeurs pour chaque propriété d’entrée requise par la règle de décision afin de renvoyer le résultat attendu. Quand Referred by employee est faux, renvoyer RecruitingWB
Temps d’exécution prévu Teste si une règle s’exécute dans un laps de temps autorisé. Nécessite une opération de comparaison et une durée autorisée exprimée en secondes. Le temps d’exécution attendu est inférieur ou égal à trois secondes.
Page Vérifie la présence d’une page en mémoire. Nécessite le nom de la page ainsi qu’une opération de comparaison. La page D_CoursesList ne contient aucune erreur

Lorsque vous avez obtenu l’ensemble des résultats escomptés, enregistrez la configuration du dossier de test. Vous pouvez accéder à un dossier de test enregistré à partir de la règle. La règle répertorie tous les dossiers de test enregistrés pour cette règle ainsi que le statut de chaque dossier de test en fonction de sa dernière exécution.

Si vous exécutez à nouveau un dossier de test et qu’il échoue, ouvrez le résultat et identifiez chaque assertion qui a renvoyé un résultat inattendu. Si un dossier de test renvoie les résultats attendus, le statut Passed s’affiche en vert.

Bonnes pratiques pour la configuration des tests unitaires

Enregistrer le dossier de test

L’enregistrement du dossier de test nécessite l’accès à un ruleset configuré pour stocker les dossiers de test. Si le ruleset que vous sélectionnez n’est pas configuré pour stocker les dossiers de test, Pega Platform renvoie une erreur. Avant d’enregistrer un test unitaire, rapprochez-vous de votre administrateur système pour identifier un ruleset configuré pour stocker les dossiers de test.

Sauvegardez les dossiers de test dans un ruleset de test dédié à la maintenance et au packaging. Pour faciliter la configuration, utilisez une application basée sur l’application de développement et incluez un ruleset conçu spécifiquement pour les dossiers de test. Lorsque l’application de développement est déployée dans l’environnement de production, vous pouvez migrer l’application sans inclure les dossiers de test.

Exécuter le dossier de test

Dans Dev Studio, la page d’accueil Unit testing répertorie tous les dossiers de test définis pour une application ainsi que le statut de chaque dossier de test en fonction de sa dernière exécution. Dans la page d’accueil, vous pouvez également créer des suites de dossiers de test composées d’un ou plusieurs dossiers de test connexes. Les suites de dossiers de test unitaire de Pega exécutent plusieurs dossiers de test dans l’ordre que vous avez indiqué. 

Tip: Dans le menu Configure , sélectionnez Application > Quality > Automated Testing > Unit Testing pour accéder à la page d’accueil.
Unit testing page

Vérifiez vos connaissances avec l’interaction suivante.


If you are having problems with your training, please review the Pega Academy Support FAQs.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice