Publicado: Diciembre 4, 2023
La búsqueda de la calidad: Pruebas de software automatizadas y continuas para la industria automotriz
La industria automotriz es una industria tecnológica. Si no me creen, miren a Tesla, que les vende una supercomputadora de 50 dólares que viene integrada en el auto. En el nivel más alto, el software lo controla todo, desde el rendimiento del motor hasta... safeGracias al entretenimiento y la navegación. El software y las aplicaciones del vehículo proporcionan datos de diagnóstico en tiempo real y se integran a la perfección (según espera el conductor) con los teléfonos inteligentes y otros dispositivos.
Las actualizaciones de software inalámbricas, que mantienen los vehículos al día con las últimas aplicaciones y mejoras de rendimiento, son cada vez más comunes. Hemos visto esta técnica empleada por VinFast, un fabricante vietnamita de vehículos eléctricos que, ante las críticas del público por el rendimiento y las capacidades de sus vehículos, prometió realizar cambios en futuras actualizaciones de software.
La industria cambia con la tecnología
Hay dos factores principales que entran en juego al hablar de pruebas de software para la industria automotriz:
- Con decenas de millones de líneas de código por automóvil, en promedio, los fabricantes de equipos originales (OEM) deben escribir, integrar, probar e implementar el código de forma rápida y eficiente. Para ello, utilizan técnicas avanzadas (más adelante hablaremos de esto).
- Simultáneamente, el software en desarrollo ha evolucionado desde la asistencia con la funcionalidad del motor y el sistema de infoentretenimiento hasta los sistemas de asistencia al conductor y la conducción autónoma, lo que aumenta la complejidad de las pruebas.
Al mismo tiempo, los ciclos de desarrollo se acortan y la demanda de aplicaciones que funcionen a la perfección presiona a los fabricantes de equipos originales (OEM) para que acerquen el lanzamiento de sus nuevas funciones al inicio de la producción. Los desarrolladores y los evaluadores necesitan ciclos de retroalimentación más cortos (gracias a la tecnología de automatización de procesos). Continuous Testing) para actualizar el código continuamente.
Estos cambios se producen de maneras que nos resultan familiares.
Al igual que muchas otras industrias en la década de 2020, la industria automotriz adopta Desarrollo ágillo cual abre la puerta a la aceleración de otros procesos, como DevOps Entrega centrada en las pruebas continuas.
Este cambio hacia el desarrollo iterativo, donde los equipos escriben, integran y prueban su código continuamente, se adapta bien a los fabricantes de equipos originales (OEM). Las API integran aplicaciones y funcionalidades en un entorno de desarrollo iterativo. integración continua/entrega continua (CICD) entorno, que permite a los equipos de desarrollo actualizar el código durante toda la vida útil de un vehículo, tomando el código más exitoso y reutilizándolo en otros lugares para minimizar errores y reducir costos.
Preparándose para el impacto
Gracias a la creciente transformación digital en todos los sectores, los automóviles están evolucionando hacia máquinas interconectadas que dependen de sistemas de software para funcionar a pleno rendimiento.
El primer caso de uso que viene a la mente son los motores y las transmisiones. Las unidades de control del motor (ECU) ayudan a optimizar el rendimiento y la eficiencia del combustible. Estas ECU utilizan algoritmos para gestionar la inyección de combustible, el avance del encendido y otros parámetros, lo que se traduce en un menor consumo y una reducción de las emisiones. En algunos superdeportivos de alta gama, estos parámetros son personalizables, lo que ofrece a los conductores una experiencia de conducción única adaptada a sus preferencias.
Hay más allá del rendimiento. En un mundo obsesionado con safeActualmente, la industria automotriz está implementando software como parte de sus principales innovaciones. Los sistemas avanzados de asistencia al conductor (ADAS), como el asistente de mantenimiento de carril, el control de crucero adaptativo y el frenado automático de emergencia, dependen en gran medida de algoritmos de software. Con capacidades que permiten aplicar los frenos o girar el volante en caso de impacto, este software contribuye a reducir los accidentes y salvar vidas.
El caso de uso más relevante para nuestra discusión es la conectividad perfecta que ofrecen los sistemas de infoentretenimiento. Estos sistemas proporcionan numerosas funciones, desde la integración con smartphones hasta la navegación, el reconocimiento de voz y muchas otras aplicaciones para el vehículo. El sistema de infoentretenimiento de Tesla incluso cuenta con una opción de cojín de broma para hacer la conducción más cómoda y, me atrevería a decir, divertida. Este aumento en la complejidad es lo que hace necesaria la realización de pruebas continuas automatizadas para garantizar la fiabilidad.
Los desafíos del desarrollo y las pruebas de software automotriz
Al analizar los desafíos, debemos separar las listas, ya que esto tiene dos vertientes. Existen desafíos tanto en las pruebas de software automotriz en general como en las de sistemas de infoentretenimiento. Examinemos ambas con más detalle.
La automatización de las pruebas continuas en la industria en general presenta los siguientes desafíos:
- SafeSistemas críticos: Es fundamental garantizar el funcionamiento impecable de los sistemas avanzados de asistencia al conductor (ADAS). El principal reto consiste en crear pruebas automatizadas que puedan simular rigurosamente escenarios reales para poner a prueba estas capacidades.
- Integraciones complejas: Todos estos sistemas están interconectados, desde los sistemas ADAS hasta el control del motor y el sistema de infoentretenimiento. El reto reside en la complejidad de estos sistemas y en la capacidad de mantener la compatibilidad entre los distintos modelos de vehículos.
- Compliance: Al tratarse de una industria altamente regulada, los esfuerzos de ensayo deben ajustarse a la normativa vigente para garantizar y demostrar el cumplimiento.
- Volumen y análisis de datos: Todos conocemos la enorme cantidad de datos que generan los procesos de pruebas continuas. Si a eso le sumamos la complejidad de los sistemas automotrices, nos daremos cuenta de lo importante y difícil que resulta analizar esos datos para identificar problemas y realizar mejoras.
- Sistemas heredados: Los coches más antiguos aún utilizan sistemas de software y hardware heredados. Sin embargo, estos sistemas deben seguir recibiendo soporte y mantenimiento a medida que el resto de la gama de productos adopta sistemas y procesos de prueba más modernos para garantizar la compatibilidad.
Profundicemos en la naturaleza del infoentretenimiento y analicemos algunos de los desafíos que implica probar esos sistemas:
- Pruebas centradas en el usuario: Las pruebas automatizadas deben emular las interacciones reales del usuario, ya que los sistemas de infoentretenimiento están al servicio del usuario final. Las pruebas deben centrarse en la usabilidad de la experiencia del usuario y el diseño de la interfaz de usuario.
- Integraciones: Estos sistemas se integran con otros sistemas del vehículo como safety y navegación. Las pruebas deben garantizar estos integraciones son impecables y no comprometen el rendimiento del vehículo.
- Interfaces multimodales: Con soporte para comandos de voz, pantallas táctiles, botones físicos y gestos, cada interfaz debe probarse para garantizar un comportamiento uniforme en todas ellas.
- Contenido y conectividad: Los sistemas de infoentretenimiento utilizan diversas fuentes de contenido, como servicios de streaming, conectividad con smartphones y actualizaciones inalámbricas. Las pruebas deben tener en cuenta todos estos formatos de contenido, las condiciones de la red y la compatibilidad.
- Rendimiento y uso de recursos: Estos sistemas deben funcionar de manera eficiente para no afectar el rendimiento general del vehículo. Pruebas de rendimiento Es necesario analizar el consumo de CPU y memoria para garantizar la capacidad de respuesta del sistema.
La IA y el aprendizaje automático se están incorporando a la línea de montaje
Cuando hablamos de pruebas automatizadas En la industria automotriz, que busca constantemente los desarrollos más innovadores, necesitamos definir cómo emplear la IA y el ML para probar estos sistemas.
- Creación de pruebas impulsada por IA: Mediante algoritmos de IA, como el software de procesamiento del lenguaje natural, se pueden analizar los requisitos para generar casos de prueba. Esto reduce el tiempo y el esfuerzo necesarios para crear pruebas manualmente.
- Análisis inteligente: Las pruebas automatizadas generan una gran cantidad de datos utilizando aprendizaje automático para analizar los resultados de las pruebas e identificar patrones de defectos, lo que ayudará a los evaluadores a priorizar y centrarse en los problemas críticos.
- Inteligencia predictiva: El uso de modelos de aprendizaje automático para entrenarlos con datos históricos ayuda a identificar patrones que se correlacionan con defectos de software. Posteriormente, los modelos pueden usar ese entrenamiento para predecir la probabilidad de defectos en código nuevo, eliminando proactivamente los problemas antes de que se conviertan en un inconveniente.
- Autosanación: Los casos de prueba defectuosos se pueden corregir automáticamente durante la ejecución de las pruebas, lo que ayuda a reducir la carga de mantenimiento. Esto garantiza que los conjuntos de pruebas sigan funcionando a medida que el software crece y evoluciona.
La IA y el aprendizaje automático están revolucionando las pruebas automatizadas para fabricantes de automóviles al automatizar tareas repetitivas y que consumen mucho tiempo. La IA y el aprendizaje automático ayudan a mejorar la fiabilidad, la eficacia y la eficiencia del proceso de pruebas. El resultado es un software de mayor calidad, entregado a gran escala y con rapidez.
Algunos grandes fabricantes ya están empleando estas técnicas:
- Tesla Utiliza inteligencia artificial para analizar datos de la flota e identificar posibles defectos. Estos datos se utilizan para mejorar el software de los vehículos.
- GM Utilizan el aprendizaje automático para la inteligencia predictiva con el fin de abordar los defectos en el código nuevo. Utilizan esos datos para priorizar los esfuerzos de prueba.
- Ford Genera casos de prueba para su sistema de infoentretenimiento mediante IA. Esto les ayuda a reducir el tiempo y el esfuerzo necesarios para crear casos de prueba manualmente.
La industria automotriz depende cada vez más del software, por lo que las pruebas continuas están surgiendo para abordar los problemas de calidad y fiabilidad. Esto no está exento de desafíos, ya que los sistemas ADAS, los componentes interconectados y el análisis de datos requieren un proceso de pruebas riguroso.
Las técnicas de IA y ML siguen surgiendo y revolucionando las pruebas continuas automatizadas al automatizar tareas repetitivas y mejorar la eficacia de las pruebas, lo que ayuda a predecir e identificar defectos.
La adopción de pruebas continuas automatizadas y el aprovechamiento de la IA y el ML ayudarán a los fabricantes de automóviles a ofrecer software fiable y de alta calidad para sus vehículos de forma rápida y segura. Esto garantizará un futuro innovador para la industria automotriz. safey están interconectados.
Revoluciona tus pruebas de software automotriz con Digital.ai, Continuous Testing Soluciones: ¡donde la innovación se une a la fiabilidad a toda velocidad!
También puede interesarle
Pero, ¿dónde vas a realizar todas esas pruebas?
Algo interesante está sucediendo ahora mismo en los equipos de control de calidad. IA…
Dispositivos virtuales frente a dispositivos reales: ¿Qué es lo que realmente importa en las pruebas móviles?
Si has dedicado tiempo a probar aplicaciones móviles, ya sabes…
Grabador de pruebas de iOS: una forma más rápida de convertir la validación en automatización.
Hemos escuchado sus comentarios. La grabadora de pruebas de iOS es…