Está en la página 1de 8

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

FACULTAD DE INFORMÁTICA Y ELECTRÓNICA


INGENIERÍA EN SOFTWARE
Estudiante: Angel Melendres
Código: 6829
Fecha:19/01/2024
VIDEO:
https://drive.google.com/uc?id=110rACm7GAt26Y66qny2oAOuULLoOwyJ0&export=down
load

Actividades:
1. prompt para el plan de pruebas (etapa de pruwbas funcionales)
2. consulta con una referencia bibliográfica y contrastarla con la de IAGen (emirtir criterio,
prude trabajarlo con IAGen)
3. Lo anterior (1 y 2 ) contextualizar con su modulo trabajado en el parcia II
4. Realizar un video de maximo un minuto emitiendo su opinion de 1,2,3, (puede hacerlo
com LOOM)
DESARROLLO

1. Utilizando cualquier herramienta de IAGen, aplique ingeniería de prompt efectivo para


determinar la mejor estrategia de pruebas de sistema en un producto software.

PROMPT:
"Genera una estrategia detallada de pruebas de sistema para un API de comercio electrónico. El API
incluye funcionalidades como gestión de productos, catálogos, procesamiento de pagos, gestión de
clientes y gestión de envíos. Considera escenarios críticos, casos extremos y asegúrate de abordar
aspectos como la seguridad, la escalabilidad y la integración con otros sistemas. Proporciona pautas
claras para realizar pruebas unitarias, de integración y de extremo a extremo. Sé específico en cuanto
a herramientas y enfoques que se puedan aplicar en este contexto."
RESPUESTA IA DE CHAT GPT:

Estrategia de Pruebas de Sistema para API de Comercio Electrónico

1. Pruebas Unitarias:

• Gestión de Productos:

• Verificar la creación, actualización y eliminación de productos.

• Validar la correcta asignación de categorías y etiquetas.


• Asegurar la consistencia de la información del producto.

• Gestión de Catálogos:

• Confirmar la visualización correcta de productos en catálogos.

• Verificar la funcionalidad de búsqueda y filtrado.

• Procesamiento de Pagos:

• Simular transacciones de pago exitosas y fallidas.

• Validar la coherencia de los registros de transacciones.

• Gestión de Clientes:

• Verificar el registro y actualización de información del cliente.

• Asegurar la seguridad y privacidad de la información del cliente.

• Gestión de Envíos:

• Confirmar la generación de información de envío precisa.

• Verificar la actualización del estado del envío.

2. Pruebas de Integración:

• Verificar la interacción correcta entre módulos.

• Confirmar la consistencia de datos entre el sistema y bases de datos externas.

• Asegurar la correcta sincronización de información entre sistemas relacionados.

3. Pruebas de Extremo a Extremo:

• Simular un flujo completo de usuario, desde la búsqueda de productos hasta el pago


y la confirmación de envío.

• Validar la experiencia del usuario en diferentes dispositivos y navegadores.

4. Aspectos Específicos:

• Seguridad:

• Realizar pruebas de seguridad para identificar posibles vulnerabilidades.

• Validar el control de acceso y protección contra ataques comunes.

• Escalabilidad:

• Realizar pruebas de carga para evaluar el rendimiento en condiciones de uso


intensivo.

• Verificar la capacidad del sistema para manejar un aumento en el número de


usuarios concurrentes.

• Integración con Otros Sistemas:


• Confirmar la integración correcta con sistemas de terceros, como pasarelas
de pago y servicios de envío.

• Validar la consistencia de datos entre sistemas externos y el API.

5. Herramientas y Enfoques:

• Utilizar herramientas como Postman para pruebas de API.

• Implementar pruebas automatizadas utilizando Selenium para pruebas de extremo a


extremo.

• Aplicar OWASP ZAP para pruebas de seguridad.

• Realizar pruebas de carga con JMeter.

Esta estrategia proporciona un enfoque detallado y específico para garantizar la robustez y calidad
del API de comercio electrónico. Puedes ajustarla según las características específicas de tu sistema y
requisitos del proyecto.

La respuesta de 1. contrastarla con una propuesta bibliográfica consultada


Propuesta Bibliográfica: Automatización de pruebas de software: historia, beneficios, desafíos
y más (zaptest.com)
Respuesta:

Comparativa entre la Estrategia de Pruebas de Sistema para API de Comercio Electrónico y la


Propuesta Bibliográfica sobre Automatización de Pruebas de Software:

1. Enfoque de Pruebas Unitarias:

• Respuesta IA: Aborda la gestión detallada de productos, catálogos, procesamiento


de pagos, clientes y envíos, garantizando consistencia e integridad.

• Bibliografía: Se alinea con la historia de pruebas de funcionalidad y simulación de


transacciones, asegurando la calidad a nivel de unidades.

2. Pruebas de Integración:

• Respuesta IA: Verifica la interacción correcta entre módulos y consistencia de datos


con sistemas externos, asegurando la coherencia del sistema.

• Bibliografía: Coincide con la necesidad de confirmar la interacción y consistencia


entre componentes, fundamentales en las pruebas de integración.

3. Pruebas de Extremo a Extremo:

• Respuesta IA: Simula el flujo completo del usuario y valida la experiencia en


diferentes contextos, asegurando la funcionalidad end-to-end.

• Bibliografía: Resalta la importancia de las pruebas de extremo a extremo para


garantizar una experiencia de usuario completa y satisfactoria.
4. Aspectos Específicos (Seguridad, Escalabilidad, Integración):

• Respuesta IA: Enfoca las pruebas de seguridad, escalabilidad y la integración con


otros sistemas, asegurando robustez y consistencia de datos.

• Bibliografía: Hace hincapié en la seguridad, escalabilidad y la integración,


destacando la necesidad de pruebas exhaustivas en estos aspectos.

5. Herramientas y Enfoques:

• Respuesta IA: Recomienda el uso de herramientas específicas como Postman,


Selenium, OWASP ZAP y JMeter para una cobertura completa de pruebas.

• Bibliografía: Comparte la idea de utilizar herramientas especializadas, enfatizando la


automatización para mejorar la eficiencia en las pruebas.

Observaciones Adicionales:

• Ambas estrategias reconocen la importancia de la consistencia de datos en la integración con


sistemas externos.

• La estrategia de la IA destaca la simulación de transacciones de pago, abordando aspectos


críticos del comercio electrónico.

• La bibliografía refuerza la necesidad de pruebas de usabilidad en diferentes dispositivos, un


punto abordado en la estrategia de la IA.

CRITERIO:
En conclusión, la estrategia de pruebas de sistema para el API de comercio electrónico y la propuesta
bibliográfica sobre automatización de pruebas de software convergen en muchos aspectos esenciales
de la ingeniería de software. Ambas abordan de manera integral la importancia de las pruebas
unitarias, de integración y de extremo a extremo, así como aspectos específicos críticos como la
seguridad, la escalabilidad y la integración con otros sistemas.

La coherencia entre la estrategia propuesta y la literatura existente refuerza la robustez de los


principios y prácticas establecidos en la automatización de pruebas de software. La similitud en las
recomendaciones de herramientas específicas, como Postman, Selenium, OWASP ZAP y JMeter,
destaca la importancia de la selección adecuada de herramientas para lograr una cobertura completa
y eficiente de las pruebas.

Este análisis comparativo respalda la validez y eficacia de la estrategia de pruebas de sistema para el
API de comercio electrónico, proporcionando una guía detallada y específica que se alinea con las
mejores prácticas de la industria. Al integrar enfoques estructurados y herramientas especializadas,
se sientan las bases para asegurar la calidad, fiabilidad y rendimiento del sistema en el contexto
dinámico del comercio electrónico. En última instancia, la combinación de la experiencia práctica y la
base teórica respalda la confianza en la implementación exitosa de una estrategia de pruebas
integral y efectiva para un API de comercio electrónico.
Aplicar la estrategia mejorada/reforzada en su modulo desarrollado en el
parcial II
Módulo Desarrollado en el Parcial II: API de Comercio Electrónico

1. Pruebas Unitarias:

• Gestión de Productos:

• Verificar la creación de productos con diferentes atributos.

• Validar la actualización de información de productos y la eliminación correcta.

• Asegurar la correcta asignación de categorías y etiquetas.

• Verificar la coherencia de la información del producto en la base de datos.

• Gestión de Catálogos:

• Confirmar la correcta visualización de productos en catálogos.

• Verificar la funcionalidad de búsqueda y filtrado en catálogos.

• Asegurar que la actualización de productos se refleje adecuadamente en los


catálogos.

• Procesamiento de Pagos:

• Simular transacciones de pago exitosas y fallidas.

• Validar la consistencia de los registros de transacciones en la base de datos.

• Garantizar la seguridad de los datos de pago.

• Gestión de Clientes:

• Verificar el registro y actualización de información del cliente.

• Asegurar la privacidad de la información del cliente.

• Confirmar la correcta asociación entre clientes y sus transacciones.

• Gestión de Envíos:

• Confirmar la generación de información de envío precisa.

• Verificar la actualización del estado del envío.

• Asegurar la coherencia de la información de envío en la base de datos.

2. Pruebas de Integración:

• Confirmar la interacción correcta entre módulos.

• Verificar la consistencia de datos entre el sistema y bases de datos externas.

• Asegurar la correcta sincronización de información entre sistemas relacionados, como


pasarelas de pago y servicios de envío externos.

3. Pruebas de Extremo a Extremo:


• Simular un flujo completo de usuario, desde la búsqueda de productos hasta el pago y la
confirmación de envío.

• Validar la experiencia del usuario en diferentes dispositivos y navegadores, abordando


aspectos de usabilidad y presentación.

4. Aspectos Específicos:

• Seguridad:

• Realizar pruebas de seguridad con herramientas como OWASP ZAP para identificar
vulnerabilidades.

• Validar el control de acceso y protección contra ataques comunes.

• Escalabilidad:

• Realizar pruebas de carga con JMeter para evaluar el rendimiento en condiciones de


uso intensivo.

• Verificar la capacidad del sistema para manejar un aumento en el número de


usuarios concurrentes.

• Integración con Otros Sistemas:

• Confirmar la integración correcta con sistemas externos, como pasarelas de pago y


servicios de envío.

• Validar la consistencia de datos entre sistemas externos y el API.

5. Herramientas y Enfoques:

• Utilizar herramientas como Postman para pruebas de API.

• Implementar pruebas automatizadas utilizando Selenium para pruebas de extremo a


extremo.

• Aplicar OWASP ZAP para pruebas de seguridad.

• Realizar pruebas de carga con JMeter para evaluar la escalabilidad.


Estrategia Mejorada de Pruebas para API de Comercio Electrónico

ANEXOS CODIGO Y PRUEBAS BASADOS EN LA ESTRATEGIA MEJORADA

Imagen 1: Visualización del Dashboard de Jest HTML con Suites de Pruebas

En esta imagen, se presenta el dashboard generado por Jest HTML, una interfaz gráfica para
visualizar los resultados de las pruebas realizadas en el proyecto. A continuación, describo algunos
de los elementos clave que podrían observarse en la imagen:
1. Resumen General:

• En la parte superior o en una sección prominente, es probable que encuentres un


resumen general que indique el número total de pruebas ejecutadas, pruebas
exitosas y pruebas fallidas. Esto proporciona una visión rápida del estado general de
las pruebas.

2. Suites de Pruebas:

• La imagen mostrará las distintas suites de pruebas que se han ejecutado. Cada suite
agrupa pruebas relacionadas, lo que facilita la identificación y corrección de
problemas específicos en áreas del código.

3. Estatus de Pruebas:

• Cada suite contendrá información sobre el número de pruebas exitosas, pruebas


fallidas y, posiblemente, pruebas omitidas. Estos datos ofrecen una visión detallada
de cómo se desempeñaron las pruebas en cada área del proyecto.

4. Detalle de Pruebas:

• Al hacer clic en una suite específica, podrías acceder a un desglose más detallado.
Esto incluirá información sobre pruebas individuales, proporcionando detalles sobre
las pruebas que pasaron y aquellas que fallaron.

5. Gráficos o Estadísticas Visuales:

• Es posible que la imagen muestre gráficos visuales, como barras o círculos, para
representar visualmente la proporción de pruebas exitosas frente a pruebas fallidas.
Estos elementos gráficos facilitan la interpretación rápida de los resultados.

6. Enlaces a Detalles de Pruebas:

• Pueden existir enlaces o botones que permitan acceder a información más detallada
sobre pruebas específicas. Esto puede incluir trazas de errores, mensajes de fallo y
otros detalles útiles para la depuración.

También podría gustarte