Mai 2022 - Aout 2022
Client : Kontron Group
Position : Ingénieur développeur logiciel
Kontron Group est une entreprise se spécialisant dans le domaine des télé-communications ferroviaires. Elle développe l'ensemble des technologies nécessaires pour le GSM-R et FRMCS sur l'aspect physique et logiciel. La BTS-R, élément le plus représenté de la chaine avec plus de 2000 unités en France, se développe constamment et nécessite l'introduction fréquentes de nouvelles fonctionnalités. Chacune d'entre elle nécessite la réalisation de près de 80 tests, dit "pre-int Sanity tests" pour s'assurer de leur bonne intégration.
Mon objectif a été de développer une application automatisant ces tests, permettant de réduire de plus de 100 heures le temps nécessaire à leur vérification et éliminer tout risque d'erreur de vérification.
Structurer et développer un logiciel selon un cahier des charges ;
Implémenter des algorithmes d'automatisations des tests pour faciliter l'exécution et l'analyses des sorties ;
Incorporer ces algorithmes dans une interface graphique intuitive ;
Rédiger des fichiers de tests et de commandes XML à partir des plans de tests de pré-intégration Sanity ;
Écrire de la documentation technique ;
Suivre une formation sur les technologies entreprise (GSM-R, FRMCS, ...).
Langages de programmation et librairies : Python (PyQt6, pySerial, regex) ; QML/JavaScript
Historique des versions : Git/Gitlab (code base)
Langages de description à balises : XML
Configuration des ports des différents appareils de la BTS-R ;
Création d'une interface facilement modifiable et portable à d'autres dispositifs.
Librairies utilisés :
Interface graphique : PyQt6 (Python)
Connexion à la BTS-R : PySerial (Python)
Récupération automatique de la configuration ;
Création et affichage de la configuration sur une interface interactive.
Librairies utilisés :
Interface graphique : PyQt6 (Python)
Mise au format de la configuration : Regex (Python)
Exécution de commandes sur la BTS-R et récupération des sorties terminales ;
Analyse des sorties et comparaison avec les contrainte du fichier test XML ;
Affichage des résultat sur une interface graphique intuitive ;
Indication et possibilité de vérification manuelle des erreurs ;
Création d'un visionneur de commande intelligent.
Librairies utilisés :
Interface graphique : PyQt6 (Python)
Envoie de commandes sur la BTS-R : PySerial (Python)
Analyse et validation des sorties terminales : regex (Python)
Fichiers de tests et commandes : XML