Árbol de páginas

Estás viendo una versión antigua de esta página. Ve a la versión actual.

Comparar con el actual Ver el historial de la página

« Anterior Versión 14 Siguiente »

En este anexo el objetivo es tener una lista de las comprobaciones comunes que debe realizar el equipo de desarrollo de un proyecto cuando se aplican cambios sustanciales o se hace una migración (tecnológica, de servidor, de base de datos, etc.).


(advertencia) Página en construcción

Comprobaciones a nivel de base de datos

Acceso a tablas

Se debe comprobar que el usuario de base de datos que use la aplicación sigue teniendo acceso a todas las tablas que se utilizan, tanto del propio usuario como las de otros esquemas que se usen.

Ejemplo: Nuestro usuario JV_APLICACION usa tablas de los esquemas de recursos humanos, tras una actualización importante una de las vistas que usamos se recrea pero no se le otorgan los permisos que tenía. Con esta situación nos podemos encontrar principalmente dos casos:

  • Si tenemos esta vista modelada como una entidad nuestra aplicación no arrancará diciendo que la tabla no existe
  • Si accedemos a la vista por de manera nativa la aplicación sí arrancará pero fallará la consulta en cuestión diciendo que la tabla no existe.

Lectura de objetos BLOB y BFILE

Se debe comprobar que la lectura de objetos de tipo BLOB y BFile se sigue realizando de manera correcta por las aplicaciones.

Ejemplo: Tras una actualización del servidor Weblogic el driver jdbc se actualiza causando que algunos de los métodos utilizados para recuperar este tipo de objetos deje de funcionar correctamente. En ese caso la aplicación funcionará con normalidad pero lanzará una excepción cuando se intente recuperar este tipo de objetos.

Paquetes PL/SQL

Se debe comprobar que los paquetes PL/SQL siguen compilando correctamente y que la aplicación sigue pudiendo acceder a ellos con normalidad.

Ejemplo: Tras una actualización de la base de datos, se descompilan algunos paquetes PL/SQL, cuando la aplicación los invoque estos paquetes fallarán provocando una excepción en los servidores

Codificación

Se debe comprobar que no hay problemas de encoding a la hora de guardar o recuperar caracteres en base de datos.

Ejemplo: Tras un cambio en una parte de una aplicación se modifica el encoding por defecto en algunas pantallas. Esto provocará que los datos que se guarden en base de datos tendrán caracteres extraños debido a usar dos codificaciones diferentes. El usuario meterá la información de manera correcta, pero al gestionarla en el servidor se les hará un cambio de codificación que tendrá como consecuencia que esos datos se guarden con el encoding modificado y cuando se recuperen no se verán correctamente.

Sesiones bbdd

Se debe comprobar que la aplicación no deja sesiones abiertas en base de datos.

Ejemplo: Una aplicación creaba sus propias conexiones a base de datos sin usar un pool de conexiones. Tras una migración una parte de la lógica de negocio falla y no se cierran las conexiones a base de datos que se abrían. Esto causará problemas tanto en la aplicación como en la base de datos en general.

Comprobaciones en infraestructura o librerías

Carga de librerías

Se debe comprobar que todas las librerías del proyecto se cargan correctamente.

Ejemplo: En ocasiones en los servidores Weblogic, tras una actualización de librerías se requiere hacer un redeploy. En esta situación se pueden dar dos casos:

  • La aplicación no arranca porque las librerías afectadas son necesarias desde el inicio.
  • La aplicación arranca pero tiene una versión antigua de la librería que no es funcional y falla cuando se vaya a usar.

Acceso a servicios ajenos

Se debe comprobar que la aplicación sigue pudiendo acceder a servicios de terceros de manera que no haya un firewall que corte el acceso o se hayan cambiado las credenciales para usar el servicio.

Ejemplo: Un servicio de terceros se migra de entorno para mejorar sus recursos, durante la migración no se copian todas las ACL correspondientes. Cuando nuestra aplicación vaya a acceder:

  • Nos indicará que no estoy autorizado a usar el recurso.
  • Dará un timeout por no poder acceder al recurso (si el bloqueo está por firewall).

Logs

Se debe comprobar que los logs se siguen imprimiendo correctamente.

Ejemplo: Tras una migración de una aplicación, no se han configurado correctamente las colas Lagar lo que hace que no se vean nuevas trazas de log.

Acceso a ficheros de recursos

Se debe comprobar que todos los recursos externos a la aplicación se siguen recuperando correctamente.


Comprobaciones tras cambios sustanciales en proyectos y/o infraestructuras

Comprobaciones infraestructura/librerías

Carga de libreríasTodas las librerías implicadas en la aplicación cargan correctamente.
Acceso a servicios ajenosLos accesos a servicios que no forman parte de la aplicación no están cortados por firewall y se sigue accediendo a ellos con normalidad.
LogsLos logs se imprimen correctamente.
Acceso a ficheros de recursosAcceso a ficheros estáticos locales a la aplicación o a directorios temporales.

Comprobaciones sobre el código fuente

Pruebas funcionalesLas pruebas de la lógica de la aplicación se realizan de manera satisfactoria.
Pruebas de serviciosLos servicios expuestos por la aplicación funcionan correctamente.

Comprobaciones de dependencias externas

Interacción con servicios externosLas interacciones con servicios externos funcionan correctamente.


  • Sin etiquetas