Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Pruebas de conciliación de autorizaciones

#

Prueba

Proceso

Objetivo

Proceso

Resultado Esperado

Valores dfmlg0a1

Valores FiservTransactions

Valores balances

1

Prueba de Lectura de Archivo de Autorizaciones

1.1 Prueba exitosa

Verificar que el sistema lee correctamente el archivo dfmlg0a1 y extrae los campos relevantes.

Ejecutar prepare_authorization_file con un archivo de prueba que contenga datos simulados.

Verificar que el sistema lee correctamente el archivo dfmlg0a1 y extrae los campos relevantes.

La función debe devolver un DataFrame con los registros filtrados correctamente según los criterios especificados (fasActionFinal=A y recordType=A).

Archivo dfmlg0a1 con al menos un registro

N/A

N/A

1.2 Prueba fallida

Verificar errores en caso que el archivo dfmlg0a1 no se encuentre

Ejecutar prepare_authorization_file cuando el archivo no se encuentra

Verificar errores en caso que el archivo dfmlg0a1 no se encuentre

La función retorna un DataFrame vacío

Archivo dfmlg0a1 no existente en path de búsqueda

N/A

N/A

2

Prueba de Conexión a MongoDB

2.1 Prueba exitosa

Ejecutar funciones que requieran conexión a MongoDB, como sync_balances.

Confirmar que el sistema se conecta correctamente a las bases de datos de MongoDB y lee/escribe datos

.Ejecutar funciones que requieran conexión a MongoDB, como sync_balances

.

Conexión exitosa y lectura/escritura de datos sin errores.

Archivo dfmlg0a1 con al menos un registro válido

Conexión válida a colección fiservTransactions

Conexión válida a colección balances

2.2

Prueba fallida

No

DB Spin

Verificar que no se logra establecer conexión con la base de datos de Spin

El sistema genera error de conexión con base de datos y lo reporta en Cloud Watch

Archivo dfmlg0a1 con al menos un registro válido

Conexión no válida a fiservTransactions

N/A

2.3 Prueba fallida BD Mirror

Verificar que no se logra establecer conexión con la base de datos de FFSS

El sistema genera error de conexión con base de datos y lo reporta en Cloud Watch

Archivo dfmlg0a1 con al menos un registro válido

Conexión válida a colección fiservTransactions

Conexión no válida a balances

3

Prueba de Filtrado y Transformación de Datos

3.1

Prueba exitosa

Asegurar que los datos son filtrados y transformados adecuadamente.

Usar un conjunto de datos de prueba y ejecutar la transformación mediante parse_authorization_file_line_udf. El archivo debe contener información valida para las columnas authorizationDate, authorizationTime, accountNumber, recordType, fasActionFinal, authorizationCode

Asegurar que los datos son filtrados y transformados adecuadamente.

Los datos transformados deben coincidir con los criterios de filtrado y transformación definidos.

archivo dfmlg0a1 válido con al menos un registro conteniendo recordType y fasActionFinal = 'A'

3.2 prueba exitosa

Verificar que registros no contemplados de dfmlg0a1 no se procesen

Los registros no contemplados deben ignorarse.

archivo dfmlg0a1 válido con al menos un registro conteniendo recordType y fasActionFinal con valores diferentes a 'A' (ver)

2.2

Prueba fallida

El archivo tiene formato incorrecto de columnas

las columnas authorizationDate, authorizationTime, accountNumber, recordType, fasActionFinal, authorizationCode No se pueden procesar correctamente

El archivo tiene formato incorrecto de columnas

El sistema genera error y lo reporta en Cloud Watch

N/A

N/A

N/A

4

Prueba de Sincronización de Balances

4.1

Prueba exitosa

Verificar que la sincronización de balances se realiza correctamente.

Ejecutar sync_balances con un conjunto de números de cuenta de prueba.

Verificar que la sincronización de balances se realiza correctamente.

Los balances en la base de datos deben reflejar los cambios especificados.

5

Prueba de Actualización de Datos en MongoDB

5.1

Ejecutar sync_balances y luego verificar los datos en MongoDB.

Comprobar que la actualización de datos en MongoDB se realiza correctamente

.Ejecutar sync_balances y luego verificar los datos en MongoDB

.

Los datos en MongoDB deben actualizarse según lo esperado.

6

Prueba de Rendimiento y Tiempos de Ejecución

6.1

Ejecutar el proceso completo bajo una carga de datos representativa.

Evaluar el rendimiento y los tiempos de ejecución del proceso bajo carga normal.

Ejecutar el proceso completo bajo una carga de datos representativa.

El proceso se completa dentro de un marco de tiempo aceptable y sin problemas de rendimiento.

Datos de prueba

  1. dfmlg0a1

Para las autorizaciones se han realizado pruebas con el siguiente archivo:

View file
nameDFMLG0A1_2023-11-09.TXT

Este archivo tiene el campo fasActionFinal con diferentes valores, permitiendo filtrar las transacciones a filtrar.

...

  1. fiservTransactions

Para la colección de fiservTransaccions se ejecutaron las pruebas con el siguiente conjunto de datos:

View file
namefiservTransaction.json

Para su uso es necesario actualizar el campo createdAt ya que el proceso sólo toma los registros de los últimos 15 días

...

  1. Balances

La colección usada para balances es la siguiente:

View file
namebalances.json

dado que el proceso selecciona las cuentas correspondientes a los registros que aparezcan en dfmlg0a1 y fiservTransactions, las cuentas a afectar son '9500503723955682686', '9500503436486273327', '9500505431082353258', '9500500351299302127' y '9500507458943397347'

De las anteriores, la única cuenta afectada es '9500505431082353258', por ser la única registrada en colección de balances de prueba