Inicio Blog Creación de pruebas del SDK de Acumatica desde cero para ISVs

Creación de pruebas del SDK de Acumatica desde cero para ISV

Dado que ahora requerimos que los principales casos de uso de sus aplicaciones se prueben utilizando el SDK de Pruebas para la certificación 2022R1, este post le guiará paso a paso para configurar y ejecutar sus primeras pruebas completamente desde cero.
Aaron Beehoo | 5 de enero de 2022

Creación de pruebas del SDK de Acumatica desde cero para ISV

Introducción

Queremos que sepas que ahora exigimos que los casos de uso principales de tus aplicaciones se prueben utilizando el SDK de pruebas para la certificación 2022R1. Este artículo le proporcionará lo que necesita para configurar y ejecutar sus primeras pruebas completamente desde cero.

Repasaremos cómo crear el proyecto de prueba, generar las envolturas de pantalla, crear los archivos de extensión para acceder a esas envolturas, así como la forma de escribir las propias pruebas.

Ahora sólo tienes que empezar a escribir pruebas de verdad.

Crear su primer proyecto de prueba

En primer lugar, deberá descargar todos los archivos necesarios:

    1. Archivos de código de ejemplo completos: https://github.com/AaronBeehoo/
    2. Descargue e instale la versión de Acumatica que está probando en https://builds.acumatica.com/
    3. Descargue y extraiga la versión correspondiente del SDK de prueba en C:Acumatica2021R2\TestSDK: http://acumatica-builds.s3.amazonaws.com/index.html?prefix=builds/21.2/21.201.0086/TestSDK/
    4. Descargar .NET v4.8: https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48

Ahora ya está listo para abrir Visual Studio y crear un nuevo proyecto, utilizando la plantilla Console App (.NET Core) C#:

Creación de pruebas del SDK de Acumatica desde cero para ISV

Una vez creado el proyecto, haga clic con el botón derecho en el proyecto y en "Gestionar paquetes Nuget". A continuación, haga clic en el icono de configuración.

Creación de pruebas del SDK de Acumatica desde cero para ISV

A continuación, debes crear un nuevo paquete de origen. Introduce un nombre e incluye el número de compilación de Acumatica y utiliza la carpeta testSDK/packages que extrajimos anteriormente de C:\Acumatica2021R2\TestSDK.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Asegúrese de que la fuente del paquete recién creado está seleccionada como se muestra a continuación.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Instala todas las referencias del paquete fuente añadido.

Tenga en cuenta que su archivo .csproj debe parecerse a lo que le mostramos a continuación. Sin embargo, es posible que tenga que escribir manualmente net4.8 para orientar el marco correcto.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Generación de envolturas de pantalla

El siguiente paso es crear una nueva carpeta llamada Wrappers en el proyecto y luego generar los wrappers necesarios para sus pruebas siguiendo las siguientes instrucciones. Debe generar los Wrappers para cada pantalla pantalla que utilice para sus pruebas, pantallas personalizadas y pantallas de Acumatica también.

A continuación, vaya a la carpeta C:\Acumatica2021R2\TestSDK_21_205\ClassGenerator y edite el archivo exe.config y asegúrese de incluir todas las pantallas que necesita utilizar durante su prueba en el atributo FilenameFilter. Además, usted tendrá que llenar los otros atributos con la información correcta de sus sitios.

A continuación, haga shift+clic derecho en la carpeta ClassGenerator y elija Abrir con PowerShell como se muestra a continuación.

Creación de pruebas del SDK de Acumatica desde cero para ISV

En PowerShell, ejecute el siguiente comando para generar las envolturas .\ClassGenerator.exe" Las envolturas se generarán en la carpeta especificada que declaró en el archivo de configuración.

Nota: El generador de envolturas de comandos tomará 2-3 minutos para mostrar el progreso, no se preocupe, no se congela, sólo seguir esperando a que la primera envoltura de pantalla para generar entonces empiezan a ir rápidamente.

Luego copia esas carpetas con wrappers dentro a la carpeta Wrappers de tu solución y felicidades, ¡ya tienes los wrappers generados para las pantallas predeterminadas de Acumatica y Custom!

Ahora vamos a crear extensiones para que sean accesibles.

Creación de extensiones para pantallas personalizadas

Creamos las Extensiones para los Wrappers para que sean accesibles dentro de su solución.

Para ello, basta con crear una carpeta llamada " Extensions" en el proyecto de prueba y, a continuación, crear un archivo cs para cada pantalla, formulario y acción utilizados en el código.

También puede ver ejemplos sin explicación en las páginas 10-12 del archivo Léame de la carpeta de descargas del SDK de prueba.

Ahora cree un archivo .cs en la carpeta de extensiones como sigue.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Haga clic con el botón derecho del ratón e inspeccione el elemento en la pantalla formulario/botón/campo que desee utilizar en su prueba. Copie el texto de la etiqueta de un campo único o fácilmente identificable al que desee acceder, luego tome ese nombre de campo y busque en el archivo wrapper generado la etiqueta elemento id o el nombre de la etiqueta del campo.
Creación de pruebas del SDK de Acumatica desde cero para ISV

Busca el nombre del elemento formulario en el fichero wrapper generado.

Creación de pruebas del SDK de Acumatica desde cero para ISV

A continuación, busque el primer uso del nombre de la clase. Copie la clase y nombre de la clase de la envoltura.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Pegue los dos valores del archivo de extensión en el formato que se muestra a continuación para que sea accesible en su prueba. Nombre. Es apropiado utilizarlo en sus casos de prueba. En este caso particular, CreateContactPopupForm.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Ahora necesitará crear una prueba básica Test.cs como se ve arriba. Puedes hacer pruebas más complejas siguiendo los fragmentos de código de las páginas 15-19 del SDKReadme.pdf del .zip de descarga del TestSDK.

Tenga en cuenta que el ejemplo de código de prueba proporcionado en el archivo léame sólo funciona en una copia en blanco de Acumatica. Siempre recomendamos utilizar los datos de SalesDemo como conjunto de datos base, ya que tiene artículos, cuentas, clientes, contactos, etc. preconfigurados.

A continuación, configure el config.xml de C:\Acumatica2021R2\TestSDK modificando según sea necesario para su sitio y agregue lo siguiente a las Propiedades (haga clic derecho en el nombre de la solución -> Propiedades) del Proyecto de Prueba para que pueda simplemente hacer clic en ejecutar(f5) en visual studio para iniciar el test.cs.

.\Tests.exe /config "C:\Acumatica2021R2\TestSDK\config.xml

Creación de pruebas del SDK de Acumatica desde cero para ISV

Después de configurar el archivo config.xml y los argumentos de depuración de la aplicación, ejecute el proyecto. Aparecerá el sitio de Acumatica y ejecutará los pasos mostrando la interfaz de usuario a medida que se ejecuta. A continuación, revisa los archivos de salida en la ubicación de la carpeta de registro que estableciste en los archivos de configuración.

Creación de pruebas del SDK de Acumatica desde cero para ISV

Errores comunes

  • Ya no se puede acceder al sitio de Acumatica después de generar envoltorios/ejecutar pruebas: Algo ha ido mal con el archivo web.config del sitio de Acumatica. Guárdelo para poder copiar el original de nuevo en la carpeta o instale un sitio nuevo y vuelva a generar las envolturas.
  • La prueba ha finalizado con el código de error 0: La prueba se ha superado correctamente.
  • La prueba finalizó con el código de error 1: Archivo no válido/falta, probablemente una carpeta incorrecta asignada en algún lugar de los archivos de configuración, o falta una envoltura/extensión.

Resumen

En este post, hemos proporcionado todo lo que necesitan como desarrolladores para configurar sus casos de prueba automatizados iniciales de Test SDK para permitir una simulación perfecta basada en la interfaz de usuario de los casos de uso de su solución. Las pruebas de Test SDK podrán ejecutarse contra cada versión menor y mayor de Acumatica para garantizar la compatibilidad con cada actualización y, si se produce un fallo, le permitirá saber exactamente dónde se produjo el fallo en los registros.

Para obtener información más detallada sobre la escritura de pruebas reales, puede encontrar casi todos los ejemplos necesarios en el SDK de pruebas readme.pdf. Además, si tiene alguna pregunta que no esté incluida en el Léame o se encuentra con errores inesperados, puede enviar un ticket de Soporte para desarrolladores para obtener más ayuda.

¡Felices pruebas!

Autor del blog

Reciba las actualizaciones del blog en su bandeja de entrada.