Schneider Electric SoMachine - ETEST Mode d'emploi

Ajouter à Mes manuels
37 Des pages
Schneider Electric SoMachine - ETEST Mode d'emploi | Fixfr
SoMachine
EIO0000002389 06/2017
SoMachine
ETEST
Guide de l'utilisateur
EIO0000002389.00
06/2017
www.schneider-electric.com
Le présent document comprend des descriptions générales et/ou des caractéristiques techniques
des produits mentionnés. Il ne peut pas être utilisé pour définir ou déterminer l'adéquation ou la
fiabilité de ces produits pour des applications utilisateur spécifiques. Il incombe à chaque utilisateur
ou intégrateur de réaliser l'analyse de risques complète et appropriée, l'évaluation et le test des
produits pour ce qui est de l'application à utiliser et de l'exécution de cette application. Ni la société
Schneider Electric ni aucune de ses sociétés affiliées ou filiales ne peuvent être tenues pour
responsables de la mauvaise utilisation des informations contenues dans le présent document. Si
vous avez des suggestions, des améliorations ou des corrections à apporter à cette publication,
veuillez nous en informer.
Aucune partie de ce document ne peut être reproduite sous quelque forme ou par quelque moyen
que ce soit, électronique, mécanique ou photocopie, sans autorisation préalable de Schneider
Electric.
Toutes les réglementations de sécurité pertinentes locales doivent être observées lors de
l'installation et de l'utilisation de ce produit. Pour des raisons de sécurité et afin de garantir la
conformité aux données système documentées, seul le fabricant est habilité à effectuer des
réparations sur les composants.
Lorsque des équipements sont utilisés pour des applications présentant des exigences techniques
de sécurité, suivez les instructions appropriées.
La non-utilisation du logiciel Schneider Electric ou d'un logiciel approuvé avec nos produits
matériels peut entraîner des blessures, des dommages ou un fonctionnement incorrect.
Le non-respect de cette consigne peut entraîner des lésions corporelles ou des dommages
matériels.
© 2017 Schneider Electric. Tous droits réservés.
2
EIO0000002389 06/2017
Table des matières
Consignes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . .
A propos de ce manuel. . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Informations générales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Objets ETEST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 2 Utilisation de l'ETEST . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ajout d'un objet ETEST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modification de scénarios de test . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Utilisation d'une série de tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Utilisation de ressources de test . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exécution d'un test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enregistrement des valeurs mesurées . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation des résultats d'un test . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Glossaire
Index
EIO0000002389 06/2017
.........................................
.........................................
5
9
13
14
15
17
21
25
26
27
28
30
32
33
34
35
37
3
4
EIO0000002389 06/2017
Consignes de sécurité
Informations importantes
AVIS
Lisez attentivement ces instructions et examinez le matériel pour vous familiariser avec l'appareil
avant de tenter de l'installer, de le faire fonctionner, de le réparer ou d'assurer sa maintenance.
Les messages spéciaux suivants que vous trouverez dans cette documentation ou sur l'appareil
ont pour but de vous mettre en garde contre des risques potentiels ou d'attirer votre attention sur
des informations qui clarifient ou simplifient une procédure.
EIO0000002389 06/2017
5
REMARQUE IMPORTANTE
L'installation, l'utilisation, la réparation et la maintenance des équipements électriques doivent être
assurées par du personnel qualifié uniquement. Schneider Electric décline toute responsabilité
quant aux conséquences de l'utilisation de ce matériel.
Une personne qualifiée est une personne disposant de compétences et de connaissances dans le
domaine de la construction, du fonctionnement et de l'installation des équipements électriques, et
ayant suivi une formation en sécurité leur permettant d'identifier et d'éviter les risques encourus.
AVANT DE COMMENCER
N'utilisez pas ce produit sur les machines non pourvues de protection efficace du point de fonctionnement. L'absence de ce type de protection sur une machine présente un risque de blessures
graves pour l'opérateur.
AVERTISSEMENT
EQUIPEMENT NON PROTEGE


N'utilisez pas ce logiciel ni les automatismes associés sur des appareils non équipés de
protection du point de fonctionnement.
N'accédez pas aux machines pendant leur fonctionnement.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
Cet automatisme et le logiciel associé permettent de commander des processus industriels divers.
Le type ou le modèle d'automatisme approprié pour chaque application dépendra de facteurs tels
que la fonction de commande requise, le degré de protection exigé, les méthodes de production,
des conditions inhabituelles, la législation, etc. Dans certaines applications, plusieurs processeurs
seront nécessaires, notamment lorsque la redondance de sauvegarde est requise.
Vous seul, en tant que constructeur de machine ou intégrateur de système, pouvez connaître
toutes les conditions et facteurs présents lors de la configuration, de l'exploitation et de la
maintenance de la machine, et êtes donc en mesure de déterminer les équipements automatisés,
ainsi que les sécurités et verrouillages associés qui peuvent être utilisés correctement. Lors du
choix de l'automatisme et du système de commande, ainsi que du logiciel associé pour une
application particulière, vous devez respecter les normes et réglementations locales et nationales
en vigueur. Le document National Safety Council's Accident Prevention Manual (reconnu aux
Etats-Unis) fournit également de nombreuses informations utiles.
Dans certaines applications, telles que les machines d'emballage, une protection supplémentaire,
comme celle du point de fonctionnement, doit être fournie pour l'opérateur. Elle est nécessaire si
les mains ou d'autres parties du corps de l'opérateur peuvent entrer dans la zone de point de
pincement ou d'autres zones dangereuses, risquant ainsi de provoquer des blessures graves. Les
produits logiciels seuls, ne peuvent en aucun cas protéger les opérateurs contre d'éventuelles
blessures. C'est pourquoi le logiciel ne doit pas remplacer la protection de point de fonctionnement
ou s'y substituer.
6
EIO0000002389 06/2017
Avant de mettre l'équipement en service, assurez-vous que les dispositifs de sécurité et de
verrouillage mécaniques et/ou électriques appropriés liés à la protection du point de fonctionnement ont été installés et sont opérationnels. Tous les dispositifs de sécurité et de verrouillage
liés à la protection du point de fonctionnement doivent être coordonnés avec la programmation des
équipements et logiciels d'automatisation associés.
NOTE : La coordination des dispositifs de sécurité et de verrouillage mécaniques/électriques du
point de fonctionnement n'entre pas dans le cadre de cette bibliothèque de blocs fonction, du
Guide utilisateur système ou de toute autre mise en œuvre référencée dans la documentation.
DEMARRAGE ET TEST
Avant toute utilisation de l'équipement de commande électrique et des automatismes en vue d'un
fonctionnement normal après installation, un technicien qualifié doit procéder à un test de
démarrage afin de vérifier que l'équipement fonctionne correctement. Il est essentiel de planifier
une telle vérification et d'accorder suffisamment de temps pour la réalisation de ce test dans sa
totalité.
AVERTISSEMENT
RISQUES INHERENTS AU FONCTIONNEMENT DE L'EQUIPEMENT



Assurez-vous que toutes les procédures d'installation et de configuration ont été respectées.
Avant de réaliser les tests de fonctionnement, retirez tous les blocs ou autres cales
temporaires utilisés pour le transport de tous les dispositifs composant le système.
Enlevez les outils, les instruments de mesure et les débris éventuels présents sur
l'équipement.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
Effectuez tous les tests de démarrage recommandés dans la documentation de l'équipement.
Conservez toute la documentation de l'équipement pour référence ultérieure.
Les tests logiciels doivent être réalisés à la fois en environnement simulé et réel.
Vérifiez que le système entier est exempt de tout court-circuit et mise à la terre temporaire non
installée conformément aux réglementations locales (conformément au National Electrical Code
des Etats-Unis, par exemple). Si des tests diélectriques sont nécessaires, suivez les recommandations figurant dans la documentation de l'équipement afin d'éviter de l'endommager
accidentellement.
Avant de mettre l'équipement sous tension :
 Enlevez les outils, les instruments de mesure et les débris éventuels présents sur l'équipement.
 Fermez le capot du boîtier de l'équipement.
 Retirez toutes les mises à la terre temporaires des câbles d'alimentation entrants.
 Effectuez tous les tests de démarrage recommandés par le fabricant.
EIO0000002389 06/2017
7
FONCTIONNEMENT ET REGLAGES
Les précautions suivantes sont extraites du document NEMA Standards Publication ICS 7.1-1995
(la version anglaise prévaut) :
 Malgré le soin apporté à la conception et à la fabrication de l'équipement ou au choix et à
l'évaluation des composants, des risques subsistent en cas d'utilisation inappropriée de
l'équipement.
 Il arrive parfois que l'équipement soit déréglé accidentellement, entraînant ainsi un fonctionnement non satisfaisant ou non sécurisé. Respectez toujours les instructions du fabricant pour
effectuer les réglages fonctionnels. Les personnes ayant accès à ces réglages doivent
connaître les instructions du fabricant de l'équipement et les machines utilisées avec
l'équipement électrique.
 Seuls ces réglages fonctionnels, requis par l'opérateur, doivent lui être accessibles. L'accès aux
autres commandes doit être limité afin d'empêcher les changements non autorisés des
caractéristiques de fonctionnement.
8
EIO0000002389 06/2017
A propos de ce manuel
Présentation
Objectif du document
Ce document décrit le framework ETEST de Logic Builder.
Champ d'application
Ce document a été actualisé pour le lancement de SoMachine V4.3.
Documents à consulter
Titre du document
Référence
Guide de la bibliothèque PD_ETest
EIO0000002394 (ENG) ;
EIO0000002395 (FRE) ;
EIO0000002396 (GER) ;
EIO0000002397 (ITA) ;
EIO0000002398 (SPA) ;
EIO0000002399 (CHS)
SoMachine - Guide de programmation
EIO0000000067 (ENG) ;
EIO0000000069 (FRE) ;
EIO0000000068 (GER) ;
EIO0000000071 (SPA) ;
EIO0000000070 (ITA) ;
EIO0000000072 (CHS)
Vous pouvez télécharger ces publications ainsi que d'autres informations techniques sur notre site
Web : http://www.schneider-electric.com/ww/en/download.
EIO0000002389 06/2017
9
Information spécifique au produit
AVERTISSEMENT
PERTE DE CONTROLE





Le concepteur d'un système de commande doit envisager les modes de défaillance possibles
des chemins de commande et, pour certaines fonctions de commande critiques, prévoir un
moyen d'atteindre un état sécurisé en cas de défaillance d'un chemin, et après cette
défaillance. Par exemple, l'arrêt d'urgence, l'arrêt en cas de surcourse, la coupure de courant
et le redémarrage sont des fonctions de commande cruciales.
Des canaux de commande séparés ou redondants doivent être prévus pour les fonctions de
commande critiques.
Les chemins de commande système peuvent inclure les liaisons de communication. Soyez
particulièrement attentif aux implications des retards de transmission imprévus ou des pannes
de liaison.
Respectez toutes les réglementations de prévention des accidents ainsi que les consignes de
sécurité locales.1
Chaque implémentation de cet équipement doit être testée individuellement et entièrement
pour s'assurer du fonctionnement correct avant la mise en service.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
1
Pour plus d'informations, consultez le document NEMA ICS 1.1 (dernière édition), « Safety
Guidelines for the Application, Installation, and Maintenance of Solid State Control » (Directives de
sécurité pour l'application, l'installation et la maintenance de commande statique) et le document
NEMA ICS 7.1 (dernière édition), « Safety Standards for Construction and Guide for Selection,
Installation, and Operation of Adjustable-Speed Drive Systems » (Normes de sécurité relatives à
la construction et manuel de sélection, installation et opération de variateurs de vitesse) ou son
équivalent en vigueur dans votre pays.
AVERTISSEMENT
FONCTIONNEMENT INATTENDU DE L’EQUIPEMENT


N'utilisez que le logiciel approuvé par Schneider Electric pour faire fonctionner cet
équipement.
Mettez à jour votre programme d'application chaque fois que vous modifiez la configuration
matérielle physique.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
10
EIO0000002389 06/2017
Terminologie utilisée dans les normes
Les termes techniques, la terminologie, les symboles et les descriptions correspondantes
employés dans ce manuel ou figurant dans ou sur les produits proviennent généralement des
normes internationales.
Dans les domaines des systèmes de sécurité fonctionnelle, des variateurs et de l'automatisme en
général, les termes employés sont sécurité, fonction de sécurité, état sécurisé, défaut, réinitialisation du défaut, dysfonctionnement, panne, erreur, message d'erreur, dangereux, etc.
Entre autres, les normes concernées sont les suivantes :
Norme
Description
EN 61131-2:2007
Automates programmables - Partie 2 : exigences et essais des équipements
ISO 13849-1:2008
Sécurité des machines - Parties des systèmes de commande relatives à la
sécurité Principes généraux de conception
EN 61496-1:2013
Sécurité des machines - Équipements de protection électro-sensibles Partie 1 : prescriptions générales et essais
ISO 12100:2010
Sécurité des machines - Principes généraux de conception - Appréciation du
risque et réduction du risque
EN 60204-1:2006
Sécurité des machines - Équipement électrique des machines - Partie 1 : règles
générales
EN 1088:2008
ISO 14119:2013
Sécurité des machines - Dispositifs de verrouillage associés à des protecteurs
- Principes de conception et de choix
ISO 13850:2006
Sécurité des machines - Fonction d'arrêt d'urgence - Principes de conception
EN/IEC 62061:2005
Sécurité des machines - Sécurité fonctionnelle des systèmes de commande
électrique, électronique et électronique programmable relatifs à la sécurité
IEC 61508-1:2010
Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques
programmables relatifs à la sécurité - Exigences générales
IEC 61508-2:2010
Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques
programmables relatifs à la sécurité - Exigences pour les systèmes
électriques/électroniques/électroniques programmables relatifs à la sécurité
IEC 61508-3:2010
Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques
programmables relatifs à la sécurité - Exigences concernant les logiciels
IEC 61784-3:2008
Communications numériques pour les systèmes de mesure et de commande Bus de terrain de sécurité fonctionnelle
2006/42/EC
Directive Machines
2014/30/EU
Directive sur la compatibilité électromagnétique
2014/35/EU
Directive sur les basses tensions
EIO0000002389 06/2017
11
De plus, des termes peuvent être utilisés dans le présent document car ils proviennent d'autres
normes telles que :
Norme
Description
Série IEC 60034
Machines électriques rotatives
Série IEC 61800
Entraînements électriques de puissance à vitesse variable
Série IEC 61158
Communications numériques pour les systèmes de mesure et de commande Bus de terrain utilisés dans les systèmes de commande industriels
Enfin, le terme zone de fonctionnement utilisé dans le contexte de la description de dangers
spécifiques a la même signification que les termes zone dangereuse ou zone de danger employés
dans la directive Machines (2006/42/EC) et la norme ISO 12100:2010.
NOTE : Les normes susmentionnées peuvent s'appliquer ou pas aux produits cités dans la
présente documentation. Pour plus d'informations sur chacune des normes applicables aux
produits décrits dans le présent document, consultez les tableaux de caractéristiques de ces
références de produit.
12
EIO0000002389 06/2017
SoMachine
Introduction
EIO0000002389 06/2017
Chapitre 1
Introduction
Introduction
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
Informations générales
14
Objets ETEST
15
Méthodes
17
Macros
21
EIO0000002389 06/2017
13
Introduction
Informations générales
Présentation
ETEST est un framework qui automatise le test d'unités dans le code de programmes exécutés
avec SoMachine.
Les tests automatisés permettent de vérifier que les fonctions mises en œuvre sont correctes.
L'exécution postérieure de tests d'unité après chaque modification du code du programme
contribue à améliorer la qualité. Le framework ETEST simplifie la définition et l'exécution de tests
réutilisables.
Considérations théoriques
Les tests d'unité font partie du processus de développement des logiciels. Ils permettent de vérifier
que les unités de programmation d'une application (par exemple, les fonctions ou les blocs
fonction) sont correctes. Vous pouvez ainsi vérifier qu'un programme respecte la spécification
prédéfinie.
Les tests d'unité représentent une phase préliminaire recommandée pour les tests d'intégration.
Ces tests d'intégration permettent de tester plusieurs unités interdépendantes. Contrairement aux
tests d'unité, les tests d'intégration s'exécutent manuellement.
Chaque modification du code du programme est source d'erreurs potentielles. Pour éviter les
erreurs, exécutez tous les scénarios de test dès que vous modifiez le code du programme.
Ces répétitions (ou tests de régression) permettent de s'assurer que les modifications du code du
programme n'ont pas d'effets délétères sur les parties inchangées du logiciel, et que le système
modifié continue de respecter les exigences spécifiées.
Parallèlement au développement d'une application, des tests d'unité sont générés et mis à jour.
Automatisés et reproductibles, ces tests vous permettent d'analyser les effets des modifications
que vous avez apportées au code du programme.
Bibliothèque PD_ETest
La bibliothèque PD_ETest fournit un ensemble de blocs fonction assistants du framework ETEST
de Logic Builder. Lorsque vous créez un objet Scénario de test dans Logic Builder, la bibliothèque
PD_ETest est automatiquement intégrée dans votre projet. Sans cette bibliothèque, ETEST est
inutilisable.
Obtention d'une licence
L'exécution de framework ETEST nécessite une licence valide.
Une fois l'installation terminée, la licence d'évaluation valable 42 jours s'active automatiquement
si aucune licence permanente n'est disponible. Pour activer une licence permanente, démarrez le
Gestionnaire de licences Schneider Electric installé en même temps que le framework ETEST.
14
EIO0000002389 06/2017
Introduction
Objets ETEST
Présentation
L'illustration montre les objets ETEST disponibles dans l'arborescence Outils de Logic Builder, en
tant que sous-nœuds d'un nœud Application :
EIO0000002389 06/2017
15
Introduction
Objet ETEST
Description
Elément de
légende
Scénario de test
 Composant central de ETEST.
1
 En fait, il s'agit d'un bloc fonction. Il utilise les extensions
orientées objet de la norme IEC 61131-3, disponibles dans Logic
Builder.
 Met en œuvre l'interface IF_TestCase.
 Contient les méthodes (voir page 17) qui peuvent utiliser des
macros (voir page 21).
TestManager
 Un responsable de test est un bloc fonction d'administration. Ce
2
bloc fonction exécute des scénarios de test et des séries de tests,
sous la forme d'un sous-processus de l'application associée.
 S'il faut exécuter des tests pour une application, les conditions
suivantes doivent être remplies :
 Un objet TestManager doit être disponible comme un sousnœud du nœud Application.
 Une tâche doit référencer cet objet.
Les deux sont créés automatiquement si vous insérez un objet
ETEST sous un nœud Application.
Ressources du test
 Intègre l'accès ainsi que l'initialisation des matériels et des
3
 Permet de regrouper des scénarios de test.
4
structures de données utilisés par les scénarios de test. ETEST
ne crée qu'une instance par ressource.
ETEST initialise les ressources avant leur utilisation (en appelant
leur méthode Prepare). ETEST désinitialise les ressources
après leur utilisation (en appelant leur méthode CleanUp).
 Avant d'exécuter un scénario de test, ETEST vérifie que les
ressources intégrées dans ce dernier sont initialisées et que le
scénario reçoit une référence à l'instance de la ressource. Une
fois le scénario de test terminé, ETEST vérifie que la ressource
est à nouveau désinitialisée.
 D'autres ressources peuvent être intégrées dans des ressources
(comme dans des scénarios de test). Les dépendances
cycliques entre des ressources ne sont pas autorisées.
Séries de tests
 Permet de référencer des scénarios de test ou d'autres séries de
tests.
NOTE :
Un objet ETEST peut être exécuté si les conditions suivantes sont remplies :
 C'est un objet Scénario de test ou Séries de tests qui est un sous-nœud du nœud Application.
 Il a été sélectionné par un objet Séries de tests exécutable.
Exemple : un objet Scénario de test qui est un nœud de l'arborescence Outils peut être exécuté
s'il est sélectionné dans un objet Séries de tests qui est un sous-nœud d'un nœud Application.
16
EIO0000002389 06/2017
Introduction
Méthodes
Présentation
Les scénarios et ressources de test contiennent des méthodes prédéfinies. Ces méthodes sont
appelées par le framework de test pendant l'exécution de tests. C'est vous, l'utilisateur, qui
programmez le contenu de ces méthodes, c'est-à-dire la logique du test. Ces méthodes
prédéfinies par ETEST ne se comportent pas différemment des méthodes générales décrites dans
le Guide de programmation de SoMachine (voir SoMachine, Programming Guide).
1
2
3
4
CleanUp : nettoyage après le scénario de test.
Execute : exécution du scénario de test.
Finalize : nettoyage après le scénario de test. (Appelé une fois dans le cycle où Execute est terminé.)
Prepare : préparation du scénario de test.
EIO0000002389 06/2017
17
Introduction
Méthodes de scénarios et de ressources de test
Les scénarios de test contiennent les méthodes :
Prepare
 Execute
 Finalize
 CleanUp

Les ressources contiennent les méthodes :
 Prepare
 CleanUp
Ces méthodes doivent être incluses dans chaque objet de test. De plus, les scénarios et
ressources de test peuvent contenir un nombre illimité d'autres méthodes.
NOTE : les méthodes des scénarios et ressources de test doivent être écrites en langage ST
(Structured Text). Sinon, une erreur peut survenir.
Séquence des méthodes pendant l'exécution d'un test
Pendant l'exécution d'un scénario de test, les méthodes sont appelées par le framework ETEST
dans la séquence suivante, quel que soit leur ordre d'apparition dans l'arborescence Outils :
Séquence
Méthode
Type d'appel
Description
Condition de fin
1
Prepare
Cyclique
Les mesures préparatoires du
test sont exécutées, par
exemple l'initialisation des
variables ou le contrôle
positionnel d'un axe.
 La macro ASSERT a été
Contient le test lui-même.
 La macro ASSERT a été
2
Execute
Cyclique
évaluée comme
FALSE.
 L'initialisation a abouti.
(La macro TEST_DONE
a été appelée.)
évaluée comme
FALSE.
 Le test a abouti. (La
macro TEST_DONE a
été appelée.)
3
18
Finalize
Une fois
La méthode est appelée si les
Elle est suivie directement
conditions suivantes sont
par la méthode CleanUp.
remplies :
 L'exécution de la méthode
Execute génère une erreur.
 La méthode Execute arrête
de s'exécuter à intervalles
réguliers, à la fin du scénario
de test pendant le même
cycle.
 La méthode Execute est
annulée par la saisie de
l'utilisateur.
EIO0000002389 06/2017
Introduction
Séquence
Méthode
Type d'appel
Description
4
CleanUp
Cyclique
Rétablit l'état initial de l'objet de  La macro ASSERT a été
test. L'objet peut ensuite être
évaluée comme
réutilisé.
FALSE.
 Le test a abouti. (La
macro TEST_DONE a
été appelée.)
Condition de fin
Pendant l'exécution d'un scénario de test, une seule méthode d'un scénario de test est appelée
dans chaque cycle. La méthode Finalize, utilisée dans le même cycle que le dernier appel de
Execute, est une exception.
Les macros (voir page 21) sont utilisables dans les méthodes de scénarios et ressources de test.
EIO0000002389 06/2017
19
Introduction
Méthodes d'appel
Ce schéma montre comment le framework ETEST appelle les méthodes de test :
20
EIO0000002389 06/2017
Introduction
Macros
Présentation
Certaines macros sont disponibles dans les méthodes (voir page 17) des objets ETEST. Vous
pouvez utiliser ces macros pour contrôler l'exécution des tests et déterminer le résultat d'un
scénario de test.
Les macros sont appelées de la même manière que les méthodes. Contrairement à un appel de
fonction, un appel de macro peut écrire des variables de la méthode d'appel et déclencher un
retour de la méthode d'appel.
Les macros sont autorisées dans les méthodes suivantes de scénarios et de ressources de test :
Prepare
 Execute
 CleanUp

Vous pouvez également utiliser les macros dans des méthodes appelées avec
ASSERT_SUBMETHOD.
NOTE : l'utilisation de macros dans d'autres méthodes de scénarios et ressources de test peut
générer des erreurs. En particulier, n'utilisez pas de macros dans la méthode Finalize.
Dans d'autres objets, les macros sont sans effet. Ceci est indiqué par un message qui s'affiche
dans la vue Messages.
EIO0000002389 06/2017
21
Introduction
Macros dans des méthodes de scénarios et de ressources de test
Dans les méthodes de scénarios et de ressources de test, les macros suivantes sont possibles :
Appel de macro
Description
ASSERT(condition)
FALSE : l'exécution échoue.
TRUE : l'exécution aboutit.
ASSERT(condition, message)
FALSE : l'exécution échoue.
TRUE : l'exécution aboutit.
message est le message de diagnostic qui s'affiche comme
résultat.
ASSERT_INCONCLUSIVE(condition, message) FALSE : le résultat du test n'est pas concluant.
Le résultat ne permet pas de savoir si un test n'a pas pu être
effectué. La cause peut être, par exemple, qu'un équipement
matériel obligatoire n'est pas disponible sur le système de
test.
TRUE : le test s'exécute correctement.
ASSERT_SUBMETHOD(method_call(i_xFirstCa Method_call permet d'appeler les méthodes qui, à leur tour,
ll, i_ifErrorLogger))
peuvent utiliser les macros pour influencer le flux de contrôle
de la méthode d'appel.
FALSE : une erreur a été détectée pendant l'appel de la
méthode.
Dans une méthode appelée par ASSERT_SUBMETHOD et qui a
été évaluée comme FALSE, ASSERT a le même effet que
ASSERT qui a été évaluée comme FALSE directement dans la
méthode d'appel.
En revanche, dans une méthode appelée sans
ASSERT_SUBMETHOD, ASSERT est sans effet sur la méthode
d'appel.
Lorsque vous utilisez ASSERT_SUBMETHOD, veillez à
respecter la syntaxe concernant la déclaration des
paramètres et le type de retour (consultez également
l'exemple 2 (voir page 23)) :
 Déclarez i_ifErrorLogger dans la sous-méthode
similaire à la méthode Execute.
 Déclarez et utilisez le type de retour ET_TestReturn
dans la sous-méthode similaire à la méthode Execute.
 i_ifErrorLogger doit également être transféré à la
sous-méthode.
TEST_DONE()
22
L'exécution du test aboutit (sans aucune erreur détectée).
Une méthode RETURN arrête simplement le cycle en cours. La
méthode sera ensuite rappelée dans le cycle suivant.
EIO0000002389 06/2017
Introduction
Macros arrêtant l'exécution de méthodes
Les méthodes Prepare, Execute et CleanUp d'un scénario ou d'une ressource de test sont
appelées de manière cyclique tant qu'un ASSERT est évalué comme FALSE ou qu'un TEST_DONE
est appelé. Si un TEST_DONE est appelé ou si un ASSERT est évalué comme FALSE, l'exécution
de la méthode est interrompue, annulant le reste de l'exécution de la méthode.
Si...
Alors…
l'exécution d'un test se termine avec TEST_DONE
le test a abouti.
une assertion de la méthode Execute ou Prepare
est évaluée comme FALSE.
l'exécution du scénario de test a échoué.
NOTE : si une assertion de la méthode CleanUp est évaluée comme FALSE, l'exécution du test
est interrompue. Ce cas de figure est catégorisé comme une erreur pendant l'initialisation ou la
désinitialisation. Un message s'affiche dans Logic Builder. Il indique que le test a été annulé et
qu'une réinitialisation du contrôleur est requise.
Exemple 1
Dans l'exemple de code de programme ci-dessous, les macros ASSERT et TEST_DONE sont
utilisées dans la partie mise en œuvre de la méthode Execute.
diResult := MyAdditionFunction(4, 3);
ASSERT(diResult = 7, 'MyAdditionFunction addition result not correct')
;
TEST_DONE();
Exemple 2
Dans l'exemple de code de programme suivant, les macros ASSERT et TEST_DONE sont utilisées
pour tester la fonction my_add (une simple addition).
Dans ce scénario de test, une méthode TestMyAdd a été créée. La méthode Execute du
scénario de test l'appelle plusieurs fois pour tester la fonction my_add dans différentes conditions
limites et avec différents paramètres.
(* Methode Execute *)
(* Declaration part*)
METHOD Execute : PD_ETest.ET_TestReturn
VAR_INPUT
i_xFirstCall : Bool;
i_ifErrorLogger : PD_ETest.IF_ErrorLogger;
END_VAR
VAR_OUTPUT
q_rProgress : REAL;
q_sState . STRING[255];
EIO0000002389 06/2017
23
Introduction
END_VAR
VAR
END_VAR
(* Implementation part*)
ASSERT_SUBMETHOD (TestMyAdd(12, 2, 14, i_ifErrorLogger));
ASSERT_SUBMETHOD (TestMyAdd(12, 3, 15, i_ifErrorLogger));
ASSERT_SUBMETHOD (TestMyAdd(12, 4, 16, i_ifErrorLogger));
TEST_DONE();
(* Submethod TestMyAdd *)
(* Declaration part *)
METHOD TestMyAdd : PD_ETest.ET_TestReturn
VAR_INPUT
i_a : INT;
i_b : INT;
i_result : INT;
i_ifErrorLogger : PD_ETest.IF_ErrorLogger;
END_VAR
VAR
iResult : INT;
END_VAR
(* Implementation part *)
iResult : my_add(i_a, i_b);
ASSERT(iresult = i_result);
(* Function my_add *)
(* Declaration part *)
FUNCTION my_add : INT
VAR_INPUT
a : INT;
b : INT;
END_VAR
VAR
END_VAR
(* Implementation part *)
iResult : my_add := a + b;
24
EIO0000002389 06/2017
SoMachine
Utilisation de l'ETEST
EIO0000002389 06/2017
Chapitre 2
Utilisation de l'ETEST
Utilisation de l'ETEST
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
Ajout d'un objet ETEST
26
Modification de scénarios de test
27
Utilisation d'une série de tests
28
Utilisation de ressources de test
30
Exécution d'un test
32
Enregistrement des valeurs mesurées
33
Evaluation des résultats d'un test
34
EIO0000002389 06/2017
25
Utilisation de l'ETEST
Ajout d'un objet ETEST
Ajout d'un objet ETEST
Pour ajouter un objet ETEST à votre projet, procédez comme suit :
Etape
Action
1
Cliquez avec le bouton droit de la souris sur le nœud Application dans l'arborescence Outils et
exécutez la commande Ajouter un objet... dans le menu contextuel.
2
Sélectionnez l'objet ETEST à ajouter (Scénario de test, Ressources du test, Série de tests).
Résultat : la boîte de dialogue Objet ETEST s'affiche.
3
Renommez votre objet en saisissant un nom dans la zone de texte Nom.
NOTE : choisissez un nom conforme à la norme IEC. N'utilisez pas de caractères spéciaux, de
chiffres en début ou d'espaces dans le nom. Le nom ne doit pas comporter plus de 32 caractères.
Si vous ne renommez pas l'objet, il reçoit un nom par défaut.
4
26
Cliquez sur le bouton Ajouter.
Résultat : l'objet ETEST est ajouté au projet et s'affiche en tant que nouveau nœud dans
l'arborescence Outils.
EIO0000002389 06/2017
Utilisation de l'ETEST
Modification de scénarios de test
Présentation
La structure des scénarios de test est similaire à celles des blocs fonction, à ceci près qu'aucun
éditeur n'est disponible dans la section de mise en œuvre. Seules les méthodes des scénarios de
test sont mises en œuvre. Pour mettre en œuvre un scénario de test, utilisez l'éditeur de méthode
en double-cliquant sur la méthode dans l'arborescence Outils.
1
2
3
L'éditeur de déclaration correspond à la section de déclaration d'un bloc fonction. Vous pouvez basculer
entre la vue textuelle et la vue tabulaire de l'éditeur, grâce aux boutons Texte et Tableau.
La zone Ressources référencées fournit les ressources de test intégrées.
La zone Description fournit des explications sur le scénario de test.
EIO0000002389 06/2017
27
Utilisation de l'ETEST
Utilisation d'une série de tests
Présentation
Un projet comprend plusieurs scénarios de test. L'éditeur Série de tests vous permet de regrouper
plusieurs scénarios dans une série de tests, en vue d'une exécution séquentielle.
28
EIO0000002389 06/2017
Utilisation de l'ETEST
L'éditeur Série de tests se divise en deux parties :
Zone
Description
Blocs fonction disponibles
Cette liste comprend les scénarios de test et les séries de tests qui
dépendent du même nœud Application que la série de tests ouverte.
Elle inclut également les scénarios de test et les séries de tests, situés
dans l'arborescence Outils. Vous ne pouvez pas sélectionner une série
de tests, qui est un sous-nœud d'elle-même.
Les références cycliques de séries de tests ne sont pas autorisées.
POU sélectionnés
Les POU sélectionnés s'affichent. Ce sont des scénarios de test.
Une série de tests ne peut sélectionner qu'un POU directement.
En revanche, il est possible de sélectionner des POU plusieurs fois
indirectement. Une série de tests peut donc inclure d'autres séries de
tests, lesquelles peuvent contenir le même scénario de test.
Bouton/zone
Description
Ajouter
Déplace le scénario de test sélectionné de la liste Blocs fonction
disponibles vers la liste POU sélectionnés.
Supprimer
Déplace le scénario de test sélectionné de la liste POU sélectionnés
vers la liste Blocs fonction disponibles.
Vers le haut
Déplace vers le haut de la liste, un scénario de test situé dans la zone
POU sélectionnés.
Vers le bas
Déplace vers le bas de la liste, un scénario de test situé dans la zone
POU sélectionnés.
Filtres tout
Saisissez un texte dans le champ Filtres pour filtrer la liste des Blocs
fonction disponibles. Cliquez sur le bouton tout pour effacer le filtre.
Action avec la souris ou le clavier
Description
Double-clic
Double-cliquez sur une entrée dans la liste Blocs fonction disponibles
pour la faire passer dans la liste POU sélectionnés (et inversement).
Touche Suppr
Déplace le scénario de test sélectionné de la liste POU sélectionnés
vers la liste Blocs fonction disponibles.
Raccourci Ctrl+A
Sélectionne toutes les entrées de la liste.
EIO0000002389 06/2017
29
Utilisation de l'ETEST
Utilisation de ressources de test
Présentation
Une ressource de test intègre l'accès ainsi que l'initialisation du matériel et des structures de
données utilisés par les scénarios de test. Les ressources sont créées et traitées comme des
scénarios de test (voir page 27). Un scénario ou une ressource de test peut être lié à une
ressource.
La section de déclaration des ressources (Ressources référencées) se trouve dans la partie
centrale de l'éditeur.
30
Bouton
Description
+ Ajouter
Ajoute une ressource de test.
- Supprimer
Supprime une ressource de test.
Vers le haut
Déplace la ressource de test sélectionnée, vers le haut de la liste.
Vers le bas
Déplace la ressource de test sélectionnée, vers le bas de la liste.
Action avec la souris ou le clavier
Description
Double-clic
Double-cliquez sur une entrée de la liste Ressources référencées pour
la modifier.
Touche Suppr
Supprime la ressource de test.
Raccourci Ctrl+A
Sélectionne les entrées de la liste Ressources référencées.
Raccourci Ctrl+clic ou
Maj+clic
Sélectionne plusieurs entrées de la liste Ressources référencées.
EIO0000002389 06/2017
Utilisation de l'ETEST
Chaque ligne du tableau comprend une ressource référencée. La colonne Nom de l'instance
contient le nom de la ressource. Ce nom est utilisé si la ressource est appelée depuis un objet de
test : une variable portant ce nom est générée et contient une référence de la ressource.
La colonne Ressources (noms de type) contient le type de la ressource. C'est le nom de l'objet
ressource de test à intégrer. Dans la vue en ligne, les ressources sont affichées avec les autres
variables.
EIO0000002389 06/2017
31
Utilisation de l'ETEST
Exécution d'un test
Présentation
Cette section explique comment exécuter des scénarios de test et des séries de test
(voir page 28).
ETEST comprend deux processus de test principaux. Un processus s'exécute dans le Logic
Builder sur le PC. L'autre processus s'exécute sur le contrôleur. Le processus sur le contrôleur est
intégré dans l'application exécutée sur le contrôleur. Ces deux processus communiquent par une
structure de données de communication.
Exécution d'un test
Pour exécuter un test, les conditions suivantes doivent être remplies :
L'application doit contenir un objet de test référencé dans une tâche.
 Le scénario de test ou la série de tests à exécuter doit être sélectionné dans l'arborescence
Outils.
 Aucun autre test ne doit être en cours.

Pour exécuter un test, procédez comme suit :
Etape
Action
1
Dans l'arborescence Outils, cliquez avec le bouton droit de la souris sur le nœud du scénario
de test à exécuter.
Résultat : le menu contextuel s'affiche.
2
Exécutez la commande Démarrer le test dans le menu contextuel.
Résultat : le scénario de test est exécuté.
Une fois le test lancé, la vue des résultats s'affiche. Elle indique l'état d'avancement du test. Pour
arrêter un test en cours, cliquez sur l'icône Annuler le test dans la barre d'outils.
NOTE : pendant l'exécution d'un test, respectez les consignes suivantes :
 Ne déconnectez pas le contrôleur.
 Ne vous déconnectez pas.
 N'arrêtez pas/ne réinitialisez pas l'application.
 Ne modifiez pas le projet.
Sinon, la logique du test est interrompue et les résultats obtenus sont inexploitables.
32
EIO0000002389 06/2017
Utilisation de l'ETEST
Enregistrement des valeurs mesurées
Présentation
L'exemple décrit dans ce chapitre montre comment enregistrer les valeurs mesurées.
Pour ce faire, le code de programmation suivant doit être appelé dans une méthode exécutée dans
le cadre d'un test.
Exemple
TestManager.fbMeasurandList.AddMeasurand('module', 'name', ET_Measurand
Types.E_NotClassified, 'value');
Pour plus d'informations, reportez-vous à :
 FB_MeasurandList (voir SoMachine, PD_ETest, Guide de la bibliothèque)
 ET_MeasurandTypes (voir SoMachine, PD_ETest, Guide de la bibliothèque)
A chaque exécution d'une commande, une nouvelle valeur mesurée est enregistrée.
TestManager est le nom de l'objet (voir page 15) TestManager de l'application.
EIO0000002389 06/2017
33
Utilisation de l'ETEST
Evaluation des résultats d'un test
Présentation
Dans la vue Résultats du test, le framework ETEST indique les résultats et l'état d'avancement du
test en cours.
NOTE : si les scénarios de test sont conçus pour les blocs fonction figurant dans des bibliothèques,
vérifiez la compatibilité des bibliothèques mises à jour, car cela peut affecter vos scénarios de test.
Tests exécutés
La liste Exécutions de tests indique les tests exécutés depuis le démarrage de Logic Builder.
Boutons
Description
Exporter
Enregistre les résultats du test sélectionné, dans un fichier XML.
(*.testresult).
Importer
Ouvre les résultats d'un test, stockés dans un fichier XML.
Imprimer le rapport
Ouvre un rapport HTML dans le navigateur web.
Résultats d'un test
Cliquez sur une entrée dans la liste Exécutions de tests pour ouvrir le test dans la zone Résultats
du test.
Les résultats importés s'ouvrent dans la zone Résultats du test et dans la liste des tests récemment
exécutés. La zone Résultats du test s'ouvre automatiquement lors du démarrage d'un test. Elle
indique le résultat (ou l'état) d'un test.
La zone Résultats du test se divise en deux parties.
En haut, le résumé des résultats du test indique le nom du POU exécuté et le résultat total.
 En bas, une section affiche plusieurs onglets :

34
Onglet
Description
Résultats du test
Cette arborescence indique la série de tests et les scénarios de test.
Elle affiche les résultats de chaque nœud.
Commentaire de l'utilisateur
Cet onglet indique le nom et le commentaire de l'utilisateur.
Par défaut, c'est le nom d'utilisateur Windows qui apparaît.
Vous pouvez ajouter un commentaire dans la zone Commentaire. Il est
stocké avec le résultat du test.
Produits
Cet onglet affiche les bibliothèques disponibles dans le projet pendant le
test.
Valeurs mesurées
Cet onglet indique les valeurs mesurées et enregistrées pendant
l'exécution du test. Ces informations permettent de mesurer les durées et
la taille des structures de données.
EIO0000002389 06/2017
SoMachine
Glossaire
EIO0000002389 06/2017
Glossaire
A
application
Programme comprenant des données de configuration, des symboles et de la documentation.
B
bus d'extension
Bus de communication électronique entre des modules d'E/S d'extension et un contrôleur.
C
configuration
Agencement et interconnexions des composants matériels au sein d'un système, ainsi que les
paramètres matériels et logiciels qui déterminent les caractéristiques de fonctionnement du
système.
contrôleur
Automatise des processus industriels. On parle également de contrôleur logique programmable
(PLC) ou de contrôleur programmable.
E
E/S
Entrée/sortie
P
programme
Composant d'une application constitué de code source compilé qu'il est possible d'installer dans
la mémoire d'un contrôleur logique.
EIO0000002389 06/2017
35
Glossaire
36
EIO0000002389 06/2017
SoMachine
Index
EIO0000002389 06/2017
Index
A
ajout
objets ETEST, 26
C
P
Prepare, méthode, 17
R
CleanUp, méthode, 17
résultats
ETEST, 34
E
T
F
U
enregistrement des valeurs mesurées, 33
ETEST
ajout d'objets, 26
exemples, 21
informations générales, 14
macros, 21
objets, 15
Execute, méthode, 17
exécution
test, 32
exemples
méthode de scénario de test, 23
Finalize, méthode, 17
M
test
exécution, 32
responsables, 15
responsables, enregistrement des valeurs mesurées, 33
ressources, 15
ressources, utilisation, 30
résultats, 34
scénarios, 15
scénarios, modification, 27
série, 15
série, utilisation, 28
utilisation
ressources de test, 30
série de tests, 28
macros
ETEST, 21
modification de scénarios de test, 27
O
objets
ETEST, 15
EIO0000002389 06/2017
37

Manuels associés