Creación de pruebas del SDK de prueba 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
desarrollador-blog-imagen

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 completos con el código de ejemplo en GitHub: AaronBeehoo
  2. Descarga e instala aquí la versión de Acumatica que estás probando
  3. Descarga y descomprime la versión correspondiente del SDK de prueba en C:\Acumatica2021R2\TestSDK –Acumatica SDK
  4. Descarga .NET v4.8aquí

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

ss01-creación-de-pruebas-del-SDK-de-pruebas

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.

ss02-creación-de-pruebas-del-SDK

A continuación, debes crear una nueva fuente de paquetes. Introduce un nombre e incluye el número de compilación de Acumatica; utiliza la carpeta«testSDK/packages»que hemos extraído anteriormente deC:\Acumatica2021R2\TestSDK.

ss03-creación-de-pruebas-del-SDK-de-pruebas

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

ss04-creación-de-pruebas-del-SDK

Instalatodaslas referencias de la fuente de paquetes añadida.

Ten en cuenta que tu archivo.csprojdebería tener el aspecto que te mostramos a continuación. No obstante, es posible que tengas que introducir manualmente«net4.8»para seleccionar el framework correcto.

ss05-creación-de-pruebas-del-SDK

Generación de envolturas de pantalla

El siguiente paso consiste en crear una nueva carpeta llamada«Wrappers»en el proyecto y, a continuación, generar los wrappers necesarios para tus pruebas siguiendo estas instrucciones. Debes generar los wrappers para cada pantalla que utilices en tus pruebas, tanto pantallas personalizadas como pantallas de Acumatica.

A continuación, ve a la carpetaC:\Acumatica2021R2\TestSDK_21_205\ClassGenerator, edita elarchivo exe.configy asegúrate de incluir todas las pantallas que necesites utilizar durante la prueba en el atributoFilenameFilter. Además, tendrás que rellenar los demás atributos con la información correcta de tus sitios.

A continuación, pulsa Mayús + clic con el botón derecho del ratón sobre la carpeta«ClassGenerator»y selecciona«Abrir con PowerShell», tal y comose muestra a continuación.

ss06-creación-de-pruebas-del-SDK

En PowerShell, ejecuta el siguiente comando para generar los envoltorios: «.\ClassGenerator.exe».Los envoltorios se generarán en la carpeta que hayas especificado en el archivo de configuración.

Nota:La línea de comandos «generate wrappers» tardará entre 2 y 3 minutos en mostrar el progreso; no te preocupes, no se ha bloqueado; simplemente espera a que se genere el primer wrapper de pantalla y, a partir de ahí, el proceso avanzará rápidamente.

A continuación, copia esas carpetas que contienen los wrappers a la carpeta«Wrappers»de tu solución y ¡enhorabuena!, ya tienes generados los wrappers para las pantallas predeterminadas de Acumatica y las personalizadas.

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» enel proyecto de prueba y, a continuación, crear un archivo.cspara cadapantalla,formulario yacciónque utilices en tu código.

También puedes consultar ejemplos sin explicación en las páginas 10 a 12 del archivo«ReadMe», que se encuentra en la carpeta de descarga del SDK de prueba.

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

ss07-creación-de-pruebas-del-SDK-de-pruebas

Haz clic con el botón derecho del ratón e inspecciona el elemento delformulario,botón o campoque quieras utilizar en tu prueba. Copia el texto de la etiqueta de un campo único o fácilmente identificable al que quieras acceder; a continuación, toma ese nombre de campo y busca en el archivo «wrapper» generado elidentificador del elementoo el nombre de la etiqueta del campo.

ss08-creación-de-pruebas-del-SDK

Busca el nombre delelemento de formularioen el archivo contenedor generado.

ss09-creación-de-pruebas-del-SDK

A continuación, busca la primera aparición del nombre de la clase. Copia laclase y nombre de la clasedel contenedor.

ss10-creación-de-pruebas-para-el-SDK

Pega los dos valores del archivo de extensión con el formato que se muestra a continuación para que estén disponibles en tuprueba. Nombre. Es recomendable utilizarlos en tus casos de prueba. En este caso concreto,CreateContactPopupForm.

ss11-creación-de-pruebas-del-SDK

Ahora tendrás que crear una prueba básicaTest.cscomo se ha mostrado anteriormente. Puedes crear pruebas más complejas siguiendo los fragmentos de código que aparecen en las páginas 15 a 19 del archivoSDKReadme.pdf, incluido en el archivo .zip de descargade TestSDK.

Ten en cuenta que el ejemplo de código de prueba que se incluye en elarchivo «readme»solo funciona en una copia vacía de Acumatica. Siempre recomendamos utilizar los datosde «SalesDemo»como conjunto de datos base, ya que incluyeartículos,cuentas,clientes,contactos, etc., preconfigurados.

A continuación, configura el archivoconfig.xmldeC:\Acumatica2021R2\TestSDK, modificándolo según sea necesario para tu sitio, y añade lo siguiente a las Propiedades (haz clic con el botón derecho del ratón sobre el nombre de la solución -> Propiedades) del proyecto de prueba, de modo que puedas simplemente hacer clic en «Ejecutar» (F5) en Visual Studio para iniciar el archivotest.cs.

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

ss12-creación-de-pruebas-del-SDK

Una vez configurado el archivoconfig.xmly establecidos los argumentos de depuración de la aplicación, ejecuta el proyecto. Se abrirá la página web de Acumatica y se seguirán los pasos, mostrando la interfaz de usuario a medida que se ejecuta. A continuación, revisa los archivos de salida en la carpeta de registro que hayas especificado en los archivos de configuración.

ss13-creación-de-pruebas-del-SDK

Errores comunes

  • Ya no se puede acceder al sitio de Acumatica tras generarlos wrappers o ejecutar la prueba:se ha producido un error en el archivoweb.configdel sitio de Acumatica. Guárdalo para poder copiar el original de nuevo en la carpeta, o simplemente instala un nuevo sitio y vuelve a generar los wrappers.
  • La prueba ha finalizado conel código de error 0:la prueba se ha superado con éxito.
  • La prueba ha finalizado conel código de error 1:archivo no válido o ausente; es probable que haya una ruta de carpeta incorrecta asignada en algún lugar de los archivos de configuración, o que falte un contenedor o una 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.

Si deseas información más detallada sobre cómo escribir pruebas, encontrarás casi todos los ejemplos necesarios en el archivo«readme.pdf»del SDK de pruebas.Además, si tienes alguna duda que no se trate en el archivo «Readme» o te encuentras con algún error inesperado, puedes enviar un ticketal servicio de asistencia para desarrolladorespara obtener más ayuda.

¡Felices pruebas!

Autor del blog

Categorías