Background
KJR delivered test automation capability for a multinational corporation specialising in rail vehicle, track and infrastructure monitoring, and passenger information systems. The team required automation assistance on their monitoring system responsible for reporting on the continuous state of trains through continuous collection of sensory and transport data.
Challenge
The two-week project timeline served tight time constraints which our KJR consultants were able to manage seamlessly and in two distinct phases. First the familiarisation of the client’s bespoke python-based test framework and secondly the execution of automated test scripts to remove current manual input.
Solution
KJR implement an end-end test automation process the client can replicate for use across other business areas. This was completed by setting up Ubuntu Virtual Machine (VM’s) to run the existing tests and gain familiarity with the control service, framework, and test bed; this included coordinating multiple layers of legacy configuration, undocumented/WIP code, dense/incomplete/out of date user guide. From here the KJR team were able to
- Retrieve and decode the output from the control service,
- Communicate between test scrip and jig,
- Dynamically reconfigure control service,
- Design API for developing scripts,
- Provide handover of scalable automation scripts.
Deliverables
- Modified test framework; dynamically reconfigured the system as necessary to run a suite of tests automatically.
- Designed and developed test scripts.
- Automation test execution.
Key Outcomes
- Converted the clients current manual testing with automated support process to an end-end test automation process that requires no manual configuration or manual log checks. This provided automated retrieval of reports for efficient operation
- Uplifted the organisation’s capability in test automation by delivering test automation scripts configured to the bespoke test framework that can be replicated and re-used across other products
Tools & Technologies
- Ubuntu
- Python
- SQLite
- Docker