May 2022 - August 2022
Client: Kontron Group
Position: Software developer engineer
Kontron Group is a company specializing in the field of railway telecommunications. They develop all the necessary technologies for GSM-R and FRMCS, both on the side of hardware and software. The BTS-R, the most represented element of the chain with more than 2000 units in France, is constantly being developed and new functionalities are regularly implemented. Each of them requires the completion of more than 80 tests, called "pre-integration sanity tests" to ensure their proper integration.
My objective was to develop an application that automates these tests, reducing the time required for their verification by over 80 hours and eliminate any risk of verification error.
Design and develop the software according to specifications;
Implement tests automation algorithms to facilitate the execution and analysis of outputs;
Incorporate these algorithms into an intuitive graphical interface;
Write XML test and command files from sanity pre-integration tests plans;
Write technical documentation;
Follow training on company technologies (GSM-R, FRMCS, ...).
Programming languages and libraries: Python (PyQt6, pySerial, regex) ; QML/JavaScript
Versioning : Git/Gitlab (code base)
Markup language : XML
Configuration of ports on the various devices of the BTS-R;
Creation of an interface that is easily modifiable and portable to other devices.
Libraries used :
Graphics Interface: PyQt6 (Python)
Connection to the BTS-R: PySerial (Python)
Automatic configuration scraping;
Creation and display of the configuration on an interactive interface.
Libraries used :
Graphics interface: PyQt6 (Python)
Configuration formatting: regex (Python)
Executing commands on the BTS-R and retrieving terminal outputs;
Comparison of the outputs with the constraints defined in the XML test files;
Displaying results in an intuitive graphical interface;
Tools for easy manual errors checking;
Creation of a smart command viewer.
Libraries used:
Graphics interface: PyQt6 (Python)
Sending commands on the BTS-R: PySerial (Python)
Analysis and terminal's outputs validation: regex (Python)
Test and command files: XML