Design and Implementation of a Test Automation Strategy for PowerOn Control Systems
Resumen
Este proyecto presenta el diseño e implementación de un sistema de automatización de pruebas visuales para PowerOn, la plataforma SCADA/ADMS utilizada por Scottish Power. El trabajo aborda el reto de automatizar pruebas funcionales y de regresión en un entorno cerrado, limitado exclusivamente a la interfaz gráfica y sin acceso a backend ni APIs públicas. Se evaluaron distintas herramientas de automatización, seleccionándose SikuliX por su rentabilidad, carácter de código abierto y capacidad de adaptación al reconocimiento de imágenes basado en píxeles.
El marco desarrollado interactúa con PowerOn íntegramente a través de su interfaz gráfica, replicando las acciones de un operador humano mediante coincidencia de patrones visuales, OCR y simulación de entradas de teclado y ratón. Incluye construcción modular de pruebas, manejo de filtros y barras de herramientas, umbrales de similitud adaptativos y mecanismos de recuperación ante errores. Para mejorar la usabilidad, se integraron componentes de Java Swing, permitiendo la selección de pruebas y la introducción de parámetros en tiempo de ejecución.
Se implementó además una capacidad de ejecución por lotes para validar la escalabilidad, posibilitando aplicar un mismo test a grandes volúmenes de datos y generando registros detallados en CSV con resultados, causas de error, capturas de pantalla y tiempos de ejecución. En un caso representativo sobre la interfaz de Diagrama de Red, el sistema alcanzó un 94% de éxito en 200 subestaciones, con un tiempo medio de ejecución de 10,51 segundos, lo que evidencia su robustez y repetibilidad. Los fallos se limitaron a dos casos límite de reconocimiento de imágenes y no interrumpieron la ejecución gracias a la lógica de watchdog.
Los resultados demuestran que la automatización basada en GUI puede ser una estrategia fiable y escalable para entornos SCADA cerrados. Aunque Eggplant se identificó como la opción técnicamente más avanzada, las restricciones presupuestarias favorecieron el uso de SikuliX, que resultó suficiente para los objetivos del proyecto. El marco desarrollado sienta las bases para futuras ampliaciones hacia otros módulos de PowerOn, la integración con verificaciones de backend y la creación de paneles centralizados de informes, facilitando pruebas más eficientes, consistentes y auditables en sistemas de infraestructuras críticas. This project presents the design and implementation of a visual test automation for PowerOn, the SCADA/ADMS platform used by Scottish Power. The work addresses the challenge of automating functional and regression testing in a closed, GUI-only environment without backend access or public APIs. Conventional automation tools were evaluated, with SikuliX selected as the most suitable solution due to its cost-effectiveness, open-source nature, and adaptability to pixel-based image recognition. The developed framework interacts with PowerOn entirely through its graphical interface, simulating human operator actions using image pattern matching, OCR, and keyboard/mouse input simulation. It supports modular test construction, filter and toolbar handling, adaptive similarity thresholds, and error-recovery mechanisms. To improve usability, Java Swing components were integrated for runtime test selection and parameter entry. A batch execution capability was implemented to validate the scalability of the approach, enabling the same test to run against large datasets with detailed CSV logging of results, error causes, screenshots, and execution times. A representative case study on the Network Diagram interface achieved a 94% success rate over 200 substations with a median runtime of 10.51s, demonstrating high robustness and repeatability. Failures were limited to two image-recognition edge cases and did not interrupt the batch thanks to watchdog logic. These results show that GUI-based automation can be a reliable and scalable strategy for closed SCADA environments. The results show that GUI-based automation can be reliable and scalable strategy for closed SCADA environments. While Eggplant remains the technically superior option, budget constraints favoured the adoption of SikuliX, which proved sufficient for the project’s objectives. The framework lays the groundwork for future expansion to other PowerOn modules, integration with backend verifications and the development of centralised reporting dashboards, enabling more efficient consistent, and auditable testing in critical infrastructure systems.
Trabajo Fin de Máster
Design and Implementation of a Test Automation Strategy for PowerOn Control SystemsTitulación / Programa
Máster Universitario en Ingeniería Industrial + Máster in Smart GridsMaterias/ categorías / ODS
H62-electrotecnica (MII-E)Palabras Clave
PowerOn, Automatización basada en GUI, Marco de Automatización de Pruebas, SikuliX, Reconocimiento de Imágenes, Reconocimiento Óptico de Caracteres (OCR), Pruebas en Infraestructuras Críticas.PowerOn, GUI-based Automation, Test Automation Framework, SikuliX, Image Recognition, Optical Character Recognition (OCR), Critical Infrastructure Testing.