Introducción
El programa de certificación de Acumatica tiene como objetivo proporcionar a sus clientes una selección de integraciones de Acumatica de confianza que se adhieren a las mejores prácticas de Acumatica. Nuestro producto, SPS Commerce EDI, ha sido parte del proceso de certificación desde los primeros días de su creación y cada año hemos comprobado que el programa se ha vuelto más robusto y riguroso. Durante las últimas iteraciones de certificación, el programa ha estado integrando pruebas automáticas al proceso de certificación para que los participantes puedan ser evaluados frente a actualizaciones menores a medida que estas se lanzan. Para 2023 R1, el aspecto de las pruebas automáticas del proceso de certificación se ha formalizado y se ha hecho obligatorio. Este artículo analiza el requisito reciente de un complemento de personalización para cualquier persona que participe en el programa, así como para cualquiera que desee utilizar la tecnología para mejorar sus propios procesos internos.
Metodología de pruebas
En iteraciones de certificación anteriores, hemos enviado un script TEST SDK, extensiones de página y una instantánea de nuestros datos de prueba. La idea era que el ingeniero de pruebas restauraría la instantánea de los datos, generaría envoltorios de página (archivos de código para manipular páginas en Acumatica) y luego ejecutaría el script de prueba automatizado. A partir de la certificación 2023 R1, esta ya no será una metodología válida. El proceso de certificación actual consiste en enviar un script TEST SDK, extensiones de página y un complemento de personalización. El complemento de personalización se enumeró como opcional en los materiales de certificación de 2022r2, pero ahora es obligatorio. El complemento de personalización está diseñado para crear datos de prueba mediante programación al inicio de una prueba. Esto eliminará el proceso de restauración de instantáneas, que es específico de la versión, manual e ineficiente.
Complemento de personalización
El complemento de personalización es una personalización de Acumatica con un archivo de código que hereda el objeto simple CustomizationPlugin. El objeto CustomizationPlugin proporciona dos eventos para anular y una función para escribir mensajes en la pantalla de personalización. Anular los eventos le permite ejecutar código durante dos momentos clave en el proceso de publicación. Puede ejecutar código 'después de que los archivos del sitio web se actualizaron, pero antes de que el sitio web se reiniciara' o 'después de que la personalización se publicó y el sitio web se reinició'.
Tarea doble
El complemento de personalización tiene como objetivo lograr dos metas clave.
- Una función clave del complemento de personalización es preparar la instalación para que se ejecute el script TEST SDK. Parte de esto es asegurarse de que las páginas personalizadas de la personalización probada estén disponibles. Cuando se inicia la prueba automatizada, creará archivos de código del Test SDK para cada página que necesite para ejecutar su prueba. Si una de estas páginas está protegida, el proceso fallará. SPS Commerce limita el acceso a las páginas de personalización según la configuración del cliente. Por lo tanto, antes de que la prueba pueda ejecutarse, la instalación debe configurarse para permitir el acceso a estas pantallas. Consulte a continuación un ejemplo de una página que debe autorizarse antes de que se pueda realizar la prueba. La sección 'Establecer permisos' en el segundo fragmento de código se encarga de esta tarea.
GIST: https://gist.github.com/patrick711/9d75d1c8c7c24f665febc8d0d4085daf#file-securepage-cs
- Instalar o actualizar datos de prueba. SPS Commerce EDI convierte los datos de la tabla de preparación en pedidos de venta de Acumatica como parte de su funcionalidad clave. El complemento de personalización debe poder detectar si es necesario insertar datos en estas tablas de preparación o si los datos dentro deben restablecerse a su estado de 'listo para ser importado'.
Aquí hay un ejemplo de un complemento que garantizará que siempre haya registros para importar al inicio de una prueba.
GIST: https://gist.github.com/patrick711/fb3e762aae893b4152aad19e6ab072e2#file-spsplugin-cs
Aunque no se esté preparando actualmente para el proceso de certificación, considero que esta tecnología será de interés para cualquiera que contemple algún tipo de prueba automatizada.
¡Feliz codificación!
