Catégories

SAP

SAP : un outil fonctionnel

Qu'est-ce que SAP ?

SAP (Systems, Applications and Products) est l'un des principaux producteurs mondiaux de logiciels pour la gestion des processus d'entreprise, en développant des solutions qui facilitent le traitement efficace des données et le flux d'informations dans les organisations.

SAP est utilisé comme gestionnaire de données. C'est un outil indépendant d'Agilitest qui permet de créer des programmes à travers des modules.

Vous pouvez consulter la documentation SAP directement sur le site web de SAP.

L'intégration de SAP avec Agilitest vous permet de créer et maintenir des tests complexes avec une approche fonctionnelle. Les tests SAP GUI peuvent être utilisés pour gérer la modification ou le développement de règles de gestion, ou la mise à jour des fonctionnalités du système ERP.

📙 Pour en savoir plus
architecture entre ats et le système sap
SAP est un outil indépendant d'Agilitest. Pour établir une connexion avec cet outil, un système driver est utilisé pour envoyer les éléments à SAP driver. Une fois le lien établi, une connexion au serveur SAP sera réalisée via le protocole SAP GUI.

Comment se connecter à un serveur SAP ?

▶️ Vous pouvez retrouver un tutoriel sur comment se connecter à un serveur SAP sur notre chaîne Youtube.

Pour utiliser SAP, vous devez installer un client : le SAP Logon. Ce client vous permettra d'interagir avec le serveur SAP. Une connexion est établie dans ce client avec les éléments transmis par l'administrateur SAP, notamment le serveur cible.

Connexion SAP

Pour se connecter à un serveur SAP, l'opération est la même que pour toute autre application testée sur Agilitest.

Commencez donc par un "Démarrer un canal".

commencez l'action canal

Sélectionnez ensuite le raccourci SAP pour définir le site canal dans le menu déroulant de la barre de saisie.

menu des raccourcis de l'application

Saisissez les coordonnées du serveur SAP, présentes dans le logon SAP, c'est-à-dire le nom de la connexion, le numéro de client (c'est-à-dire le numéro de mandat associé) et éventuellement la langue (EN/FR/...).

Cliquez ensuite sur "Activer l'autorisation de base" pour entrer vos données de connexion : nom d'utilisateur + mot de passe.

Raccourci SAP

💡 Conseil

Pour éviter que votre mot de passe n'apparaisse dans le test, pensez à créer un mot de passe crypté à partir du menu des propriétés du projet.

Pour démarrer la connexion en anglais, vous pouvez changer la langue dans la partie de connexion en ajoutant"/EN" à la fin de l'identifiant.

SAP english connection

Pendant l'exécution, la connexion se fait automatiquement. Une fois connecté, le site driver reprend la fenêtre SAP ouverte sur la page d'accueil SAP.

🔸 Attention

":" est également un séparateur possible dans la chaîne de connexion à un SAP canal.

Exemple : nom_de_connexion:numéro_de_client:langue

Session enregistrée dans les propriétés ATS

Pour rappel, il est également possible de configurer les applications couramment utilisées pour qu'elles apparaissent directement dans le panneau des applications lors de l'action d'ouverture de canal . Ceci est également possible pour les sessions auxquelles vous avez accès, y compris les sessions SAP.

Ce raccourci vous permet d'éviter de partager les informations relatives à la connexion à un serveur SAP (identifiants, mots de passe) si vous souhaitez travailler sur un test SAP sur plusieurs postes de travail.

Pour utiliser ce raccourci, vous devez modifier les propriétés ATS .

Pour accéder aux propriétés ATS , allez dans la section "Paramètres" dans Agilitest.

Bouton de réglage

Cliquez ensuite sur "Modifier la configuration" dans les paramètres de ATS

Bouton de modification de la configuration

Cela ouvrira la page des propriétés ATS où vous pourrez configurer divers éléments.

ats propriétés

Voici un exemple de configuration possible pour une session SAP :

📙 Configuration SAP

<sap>

<timeOut>200</timeOut>

<sessions>

<session>

<name>MySAP</name>

<client>800</client>

<connection>(Logon_id)</connection>

<authentication>(Code_source_ATS)</authentication>

</session>

L'authentification se trouve dans le code ATS de votre script avec une connexion SAP.

Pour y accéder, ouvrez votre script et cliquez sur l'icône "Données d'en-tête du script".

Bouton de données d'en-tête de script

Cliquez ensuite sur "Code ATS"

code ats bouton

Elle affiche toutes les actions du script sous forme de code.

Pour remplir les informations de connexion dans les propriétés, récupérez le code de chaîne correspondant à la connexion au serveur SAP à partir de l'action "Démarrer un canal".

ats info code

Copiez les informations de connexion dans les propriétés ATS .

ats propriétés

Une fois les informations saisies, sauvegardez votre fichier et revenez au menu des applications d'Agilitest où vous retrouverez la session que vous avez saisie.

Application SAP

Interface SAP

Une fois SAP ouvert, tout comme un test sur le Web, vous pouvez capturer les éléments avec l'outil de capture pour pouvoir les tester.

capture dans SAP

L'écran d'accueil SAP affiche les modules, ou transactions, disponibles pour les utilisateurs.

modules sap

Ces modules correspondent à des programmes qui vous permettent de gérer différents aspects de l'entreprise, tels que la gestion des stocks ou les informations relatives aux ressources humaines.

Vous pourrez choisir parmi les différentes interfaces possibles en fonction des écrans qui ont été mis à votre disposition lors de la création de votre compte.

Écrans SAP

L'accessibilité de ces écrans est décidée en fonction du rôle occupé dans l'entreprise et de ses besoins en matière de gestion des données.

Les modules SAP permettent de gérer de nombreux aspects de l'entreprise tels que la finance, les ventes, la production, la logistique, la distribution, la comptabilité et les ressources humaines. Comme SAP gère un système d'information qui, par nature, est sujet à des changements, il est important d'effectuer régulièrement des tests unitaires fonctionnels dans votre processus QA pour s'assurer que tous ces processus fournissent continuellement les résultats escomptés.

Exemple: SAP propose une solution SIRH qui automatise les opérations de gestion des ressources humaines, mais qui offre également des expériences qui stimulent l'engagement et la productivité des employés. Le SIRH de SAP se concentre sur la gestion de l'expérience des employés, les fonctions de base des ressources humaines et de la paie, la gestion des talents et l'analyse des ressources humaines.

Tests sur SAP

Changement de fenêtre

Dans certains cas, le module s'ouvre dans une nouvelle fenêtre SAP. Pour gérer cette notion de fenêtre, vous devrez changer la fenêtre d'Agilitest.

Pour ce faire, cliquez sur l'action de fenêtre.

Action de la fenêtre

Passez ensuite à la fenêtre ayant l'index 1 (la fenêtre principale a l'index 0).

index dans l'action de la fenêtre de commutation

Actions sur un tableau

Une fois votre tableau ouvert dans l'interface SAP, ouvrez votre outil de capture pour effectuer des actions sur celui-ci.

Lors de la capture, vous devrez définir un Locator qui est un ensemble d'attributs permettant d'identifier l'élément capturé.

Parmi les branches parentales de l'élément, on trouve généralement : l'objet (Exemple:"TableControl", "GridControl", "TreeControl"), les lignes, les colonnes.

Parents de l'élément capturé

Plusieurs cas de figure sont possibles :

  • Recherche d'un élément d'un tableau qui apparaît directement sur l'interface

Exemple Un tableau de quelques lignes.

Lorsque nous capturons un élément sur l'écran, la recherche de l'élément avec le site locator sera moins précise.

La recherche peut être effectuée en fonction de l'attribut"Text" de l'élément capturé et de l'ElementId de la branche"TableControl".

Éléments du tableau

Une fois les attributs sélectionnés, faites glisser l'élément dans l'éditeur Agilitest pour créer une action.

cliquer sur l'action

Ce type de recherche ne recherchera pas de ligne, mais restera simplement sur le même écran.

  • Recherche d'un élément de tableau dans une longue liste

Lorsque vous souhaitez capturer un élément d'une longue liste qui nécessite qu'Agilitest parcoure les éléments, vous devez le spécifier à l'aide d'attributs.

Cette fois, vous devez lui indiquer que l'élément se trouve dans une "Row"

Éléments du tableau

Faire glisser l'élément dans une action

Action de clic

Une recherche dans une ligne est effectuée en fonction du texte qu'elle contient. Agilitest parcourt les lignes du tableau pour trouver celle qui contient le texte saisi comme attribut.

💡 Conseil

Pour simplifier les opérations, il est recommandé de transformer le texte en une expression régulière.

Actions sur les grilles

Il est possible de passer d'un tableau à une grille en appuyant sur la touche F8 et en spécifiant le nombre de lignes que l'on souhaite voir apparaître dans la case "Nombre maximum de lignes".

Transformer le tableau en grille

Les grilles permettent d'afficher plus d'informations qui peuvent être lues verticalement et horizontalement.

grilles

La capture d'un élément se déroule de la même manière que pour les tableaux, seul l'affichage des parents des éléments capturés spécifiera qu'il s'agit de grilles.

Éléments de la grille

Les grilles sont un ensemble de données organisées en lignes et en colonnes.

Il est également possible de rechercher la présence d'un élément dans plusieurs lignes en utilisant "Row".

Pour ce faire, vous devez créer un sous-script avec des commentaires de journal d'exécution pour afficher les éléments trouvés.

sous-script action

Exemple: Si nous recherchons le texte "MIERZWA"dans toutes les lignes en utilisant la propriété text de la classe "GridRow", alors votre sous-script affichera les lignes qui contiennent ce texte.

Dans cet exemple, 5 itérations sont affichées, donc MIERZWA apparaît 5 fois dans les lignes. Les paramètres indiquent l'emplacement exact, par exemple la ligne "1014". (voir la capture d'écran ci-dessous)

sous-script paramètres d'exécution

Avec cette action, chaque ligne est transmise au script et chaque colonne représente un paramètre.

ats paramètres du code

Actions sur les arbres de données

L'arbre de données est parfois composé dans une configuration simple avec une seule colonne qui comprend plusieurs niveaux et d'autres fois de manière plus complexe, avec plusieurs colonnes dans le même arbre. L'exécution des tests sur les arbres est similaire à celle sur les grilles et les tableaux.

Les éléments de recherche d'un composant sont similaires à ceux des grilles et des tableaux.

éléments d'arbres

La branche "TreeNode" représentera les nœuds de l'arbre, c'est-à-dire les différents niveaux qui apparaissent.

Chaque nœud a zéro ou n enfants qui peuvent être déployés.

Nœuds de l'arbre

Exemple: L'élément "Données de base" a 3 enfants, alors que ses enfants n'en ont aucun.

Lorsqu'un arbre est complexe, un nœud peut avoir plusieurs colonnes.

Comme pour les grilles, l'arbre est configuré avec des lignes qui concatènent toutes les colonnes de la ligne.

Cela signifie que la recherche d'éléments d'une structure arborescente se fait principalement par le biais de la branche "Row".

Branche de la rangée d'arbres

Activation de Scripting SAP

Il y a deux choses à faire pour activer le scripting, d'abord du côté du serveur et ensuite du côté du client.

Côté serveur dans SAP

Transaction RZ11 :

Saisissez le paramètre "sapgui/user_scripting".

Cliquez sur "Afficher".

Lorsque l'écran suivant apparaît, cliquez sur "Modif. Val."

Saisissez ensuite "TRUE" pour activer le scripting.

Normalement, cette opération ne nécessite pas le redémarrage de l'instance.

Enfin, cliquez sur le bouton "Sauvegarder".

Côté client, sur SAPGUI

Cette configuration est nécessaire pour éviter les popups à chaque lancement.

Cliquez sur "Options" dans le menu

Ensuite, dans "Support de scripts", cochez "Activer le support de scripts".

VBscript

Enregistreur SAP dans SAP

L'une des fonctionnalités offertes par SAP est l'utilisation d'un enregistreur. Une fois activée, cette fonction enregistre les actions effectuées sur SAP et les traduit ensuite en vbscript.

Pour lancer la capture directement dans SAP, allez dans les options du menu déroulant : Plus > Options et actions SAP GUI > Enregistrement et playback du script

enregistreur de sève

Une fenêtre de lancement s'affiche.

fenêtre contextuelle de l'enregistreur

Cliquez sur le bouton "enregistrer"pour lancer l'enregistrement

bouton d'enregistrement

Une fois cela fait, effectuez vos manipulations puis cliquez sur le bouton "arrêter" pour terminer l'enregistrement.

bouton d'arrêt

Une fois la capture terminée, une page contenant toutes vos actions au format vbscript s'ouvrira automatiquement.

vbscript

Pour rejouer ce script, cliquez sur le bouton "lecture".

Cela ouvrira votre explorateur Windows et le dossier contenant votre script.

script dans l'explorateur windows

En cliquant sur le script, les actions qui ont été exécutées directement sur SAP seront exécutées à nouveau.

Pour utiliser les données vbscript dans Agilitest, vous devez consulter les dernières lignes de votre script.

actions vbscript

Action de script dans Agilitest

A partir d'Agilitest, vous pouvez également créer des actions au format vbscript et interagir avec SAP.

Deux possibilités s'offrent à vous :

  1. Soit en utilisant les lignes de script du vbscript.

Pour cela, copiez une ligne de script de votre vbscript que vous souhaitez transformer en action.

ligne dans vbscript

Cliquez ensuite sur le bouton "Scripting"

action de script

Il n'est pas nécessaire de spécifier un élément d'interface.

aucun élément

Cliquez directement sur l'action "Scripting" et collez la ligne de script

saisir du texte dans une action de script

         2. Soit en créant manuellement des actions vbscript à l'aide des propriétés

Cliquez sur le bouton "Scripting".

action de script

Ajouter un élément d'interface et entrer une valeur qui agira sur cet élément

élément d'interface dans une action de script

Exemple Exemple : Ci-dessus, l'élément interface correspond à un élément dans lequel on peut saisir du texte, avec l'élément "texte" de cet élément est définie comme "MIGO".

Lorsque l'action est exécutée, elle se traduit par le texte MIGO dans la saisie de texte sur SAP.

"migo" saisi dans la barre de texte

La différence entre ces deux manipulations est qu'en passant par une ligne de code du vbscirpt l'accès à l'objet se fait par son id, alors qu'en passant par une action Agilitest, l'accès à l'objet se fait par ses propriétés.

SAP Recorder avec Agilitest

Agilitest vous permet d'utiliser un Recorder pour vos actions SAP.

Une fois que SAP canal a été lancé, vous pouvez activer le Recorder.

Cliquez sur le bouton dans le menu de gestion de canal pour lancer l'application Enregistreur.

bouton d'enregistrement, rouge

Le bouton est rouge lorsqu'il est désactivé et vert lorsqu'il est activé.

Effectuez ensuite vos actions directement sur SAP : saisie de texte, clics, etc... Tout cela sera traduit en action dans l'éditeur Agilitest.

Par défaut, le critère de sélection de l'objet est "ElementId". Pour maintenir la flexibilité d'Agilitest, vous pouvez modifier les attributs assignés à chaque action en fonction de vos besoins.

🔸 Attention

Toutes les actions de saisie de texte doivent être validées en appuyant sur la touche"ENTER" à la fin de la saisie.

Vous pouvez également générer des actions de vérification.

A cet effet, une commande clavier a été mise en place pour créer des actions de vérification dans l'éditeur Agilitest :

  • Presse ALT+F1 pour créer une action de vérification de propriété
  • Presse ALT+F2 pour créer une action de vérification d'occurrence
  • Presse ALT+F3 pour effectuer une action sur une propriété

Ces trois commandes sont indépendantes de l'enregistreur et peuvent être exécutées sans qu'il soit activé lors d'un test SAP.

Pour arrêter le bouton de l'enregistreur, cliquez à nouveau dans le menu de gestion canal .

bouton d'enregistrement, vert

Vous avez encore besoin d'aide ?
Contacter le support