Test de logiciels et de performance des systèmes SAP


L'équipe de test de la FIS-ASP n'avait pas vraiment de doutes lorsqu'elle s'est posé cette question. Elle était parfaitement consciente des exigences particulières auxquelles le logiciel devait répondre.
Disons-le tout de suite : L'essai n'a pas été une déception, bien au contraire. L'objectif était de tester les logiciels et les performances des systèmes SAP avec des moyens open source. Le projet OpenQa a été développé à l'origine par Suse.
De nombreuses entreprises utilisent OpenQa pour les tests automatisés de logiciels et l'intègrent dans les processus d'intégration continue de la gestion du code source. Des distributions Linux entières sont ainsi testées de manière entièrement automatisée.
Comme OpenQa est capable d'effectuer et de vérifier les entrées de l'interface graphique par reconnaissance d'image et d'analyser les échantillons sonores joués, il est vite apparu que les tâches ne seraient pas insurmontables.
Les tests eux-mêmes se déroulent dans des images préparées qui représentent une machine virtuelle complète. Les machines virtuelles sont créées avec QEMU - dont l'extension KVM n'est pas un produit étranger pour l'équipe de test de la FIS-ASP, puisqu'il est également autorisé pour la virtualisation de systèmes SAP et qu'il est également utilisé dans le cloud OpenStack.
Un coût initialement estimé très élevé pour un tel projet est donc énormément réduit si les technologies utilisées sont déjà connues.
Lors des premiers tests, il est apparu qu'OpenQa permettait non seulement de tester les logiciels, mais aussi les performances de manière automatisée. Pour ce faire, FIS-ASP a développé différents scénarios : Tout d'abord, un test a été effectué pour créer un nombre prédéfini d'utilisateurs dans le système SAP.
Toutes les interactions avec SAP ont eu lieu par le biais de SAP GUI pour Java, qui fonctionne sur une petite VM Linux. Ensuite, une série d'autres "tests" a été lancée en parallèle, chacun représentant un utilisateur.
Il s'agissait simplement de prendre en compte les cas d'utilisation spécifiques à l'entreprise afin de mesurer de manière fiable le système SAP à tester dans des situations de charge et de collecter des données de performance de manière ciblée.
Les différents tests sont définis dans des fichiers JSON faciles à traiter et peuvent ainsi être adaptés par script. Une fois que tous les tests ont été effectués, un autre test permet de supprimer tous les utilisateurs créés précédemment dans SAP.
Les tests d'interfaces basées sur un navigateur, comme les applications Fiori, peuvent être gérés de la même manière que les tests à travers l'interface utilisateur graphique SAP. Les testeurs de FIS-ASP ont utilisé à la fois Chrome et Firefox comme navigateurs supportés par SAP.
En ce qui concerne l'évolutivité, l'exigence était de pouvoir effectuer des tests de performance sur une plage de plus de 10.000 utilisateurs avec une charge matérielle raisonnable.
L'évolutivité du matériel était déjà assurée par OpenQa, où le multi-mode pouvait être configuré dans l'interface. Cependant, comme chaque test représente une machine virtuelle sur le serveur OpenQa, FIS-ASP a examiné ici quelques options dans la gestion de la mémoire Linux.
Les meilleurs résultats ont été obtenus avec l'utilisation de KSM (Kernel Samepage Merging). Dans ce cas, les pages de mémoire qui ne se distinguent pas les unes des autres ne sont stockées qu'une seule fois dans la mémoire vive et présentées à tous les processus qui en ont besoin.
La multitude de tâches différentes que l'on peut résoudre avec OpenQa réduit considérablement la quantité d'outils différents qu'il faudrait sinon utiliser.
La solution permet de créer des compléments utiles à SAP et aux systèmes environnants tout en maintenant la charge de travail à un niveau bas grâce à un degré élevé d'automatisation.
En travaillant avec OpenQa, on trouve toujours de nouvelles approches d'utilisation, qu'il s'agisse d'effectuer des retouches standardisées après des copies de systèmes ou de simples activités comme les changements de mots de passe.
Grâce au contrôle intégré de toutes les étapes réalisées dans les tests respectifs, le succès des activités peut être contrôlé et également documenté.