









Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Este documento aborda los temas relacionados con la ejecución de casos de pruebas, tanto funcionales como no funcionales, en el contexto de un proyecto académico. Se detallan los criterios de evaluación para los casos de prueba desarrollados, la determinación del flujo de pruebas de regresión y la presentación de cinco herramientas de ejecución de pruebas de automatización, como selenium, testcomplete, jmeter y junit. El documento proporciona una visión general de las estrategias y técnicas utilizadas en la garantía de la calidad del software, lo que lo convierte en un recurso valioso para estudiantes y profesionales interesados en el campo de las pruebas y la calidad del software.
Tipo: Apuntes
1 / 16
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!










Producto Académico n.° 3 Proyecto Evaluación para el consolidado 3 Actividad Individual
1. Consideraciones:
Criterio Detalle Resultado de aprendizaje de la unidad Al finalizar la unidad, el estudiante será capaz de aplicar técnicas de pruebas de software de acuerdo con cada proyecto. Temas Ejecución de casos de Pruebas Tipo de producto académico Proyecto, informe. Enunciado /Consigna Evalúe el caso Despegar (Anexo 01). En base al caso despegar desarrollado en el PA02, defina lo siguiente:
Criterio s Sobresali ente ( puntos) Suficiente (3 puntos) En proceso ( puntos) En inicio ( puntos ) Casos de Pruebas Funcionales Desarrolla adecuadamente todos los casos de prueba acordes al caso presentado (10) Respeta la estructura de generación de casos de prueba (Datos de entrada – proceso – Datos de Salida) Desarrolla parcialmente los casos de prueba acordes al caso presentado (entre 6 y 9) Respeta la estructura de generación de casos de prueba (Datos de entrada
Anexo 01: Caso Despegar Web Despegar: https://www.despegar.com.pe/. Despegar es una empresa de viajes con más de 20 años en el mercado operando en 20 países de Latinoamérica. Desde entonces ofrece a sus usuarios opciones de hospedaje, vuelos, renta de autos, seguros de viajes, cruceros paquetes turísticos de las zonas más atractivas para viajeros en un mismo lugar. a página web ofrece varias categorías para cada tipo de necesidad del viajero: Alojamientos Vuelos Paquetes Escapadas Actividades turísticas Renta de autos Disney Seguros de viajes Cruceros Traslados Dependiendo la opción, se tendrá que ingresar el destino y las fechas de entrada y de salida (en caso de alojamiento) o de ida y de vuelta si se tomara un vuelo. También es importante mencionar cuántas personas irán a dicho sitio. Finalmente se dará click en buscar. Paquetes En los planes de viaje que ofrece el sitio web, se incluye el vuelo y el hospedaje en distintos lugares ya sea dentro de la República Mexicana y otros países. En la opción Escapadas, el usuario encontrará destinos de fin de semana que incluye alojamiento y actividades en el sitio elegido. Seguro viajero
La empresa siempre plantea como máximo tres iteraciones en las pruebas que aplica, eso debido a que se lanzan campañas de marketing con fechas definidas.
1. Diez casos de Pruebas Funcionales. Se ha elegido el tercer caso, lo cual el propósito de las pruebas funcionales es verificar que el software cumpla con los requisitos funcionales las cuales son: Registro de usuarios: Verifique que los usuarios puedan registrarse correctamente en la aplicación o sitio web. Inicio de sesión: Confirme que el inicio de sesión del usuario sea exitoso y que los datos del usuario se muestren correctamente. Búsqueda de productos : verifica que la búsqueda de un producto o servicio en una aplicación o sitio web sea correcta y arroje los resultados correctos. Añadir al carrito: Comprobar si el usuario puede añadir el producto al carrito y si funciona el proceso de compra. Pago: Verifica que el proceso de pago sea correcto y que el usuario pueda completar la transacción. Verificación de correo electrónico: verifique que la aplicación o el sitio web puedan enviar correos electrónicos de verificación de manera efectiva. Carga de archivos: Verifique que la aplicación o el sitio web permita cargas de archivos válidas. Comunicación en tiempo real: compruebe si la aplicación o el sitio web proporciona comunicación en tiempo real entre los usuarios. Modificación de Perfil de Usuario: Verifica que los usuarios puedan modificar efectivamente su perfil y que los cambios se reflejen correctamente. Eliminar un elemento: Verifique que la aplicación o el sitio web permita la eliminación válida de elementos. 2. 5 casos de Pruebas No Funcionales 2.1. Pruebas de rendimiento: Estas pruebas son necesarias para garantizar que el servicio pueda manejar el alto volumen de solicitudes y cargas de trabajo. Algunos aspectos que se pueden evaluar en estas pruebas incluyen: Tiempo de respuesta de la plataforma Carga máxima que puede soportar el sistema Carga máxima que puede soportar la red Latencia en la transferencia de paquetes Tasa de transferencia de paquetes
Tiempo de respuesta del soporte técnico en caso de problemas
3. Determinación del flujo de pruebas de regresión Las pruebas de regresión se refieren a la estrategia utilizada para identificar y ejecutar las pruebas necesarias para verificar que los cambios en el software no afecten la funcionalidad existente. El proceso de prueba de regresión generalmente incluye los siguientes pasos: 3.1. Identificación de los cambios: El primer paso en el flujo de pruebas de regresión es identificar los cambios realizados en el software. Esto puede ser una nueva funcionalidad agregada, una corrección de errores o una actualización de componentes existentes. 3.2. Selección de las pruebas relevantes: Una vez que se han identificado los cambios, el siguiente paso es seleccionar las pruebas relevantes que deben ser ejecutadas para validar que el software funciona correctamente después de los cambios. La selección de las pruebas se basa en la evaluación de los cambios realizados y la identificación de las áreas críticas que podrían verse afectadas. 3.3. Priorización de las pruebas: No todas las pruebas son igualmente importantes y relevantes en el proceso de regresión. En este sentido, es importante priorizar las pruebas en función de su importancia y capacidad para detectar posibles problemas o fallas. Esto permite una ejecución más eficiente de las pruebas y una identificación temprana de problemas críticos. 3.4. Ejecución de las pruebas: Después de seleccionar y priorizar las pruebas, se procede a ejecutarlas para validar que el software sigue funcionando correctamente después de los cambios realizados. La ejecución de pruebas puede ser manual o automática, dependiendo de la naturaleza de los cambios realizados y la complejidad del sistema. 3.5. Análisis de resultados: Una vez que se han ejecutado las pruebas, es necesario analizar los resultados y determinar si se han encontrado errores o problemas en el software. Si se han detectado errores, es importante documentarlos y reportarlos para que puedan ser corregidos.
3.6. Ajuste del flujo de pruebas: El flujo de pruebas de regresión debe ser ajustado en función de los resultados obtenidos y las pruebas realizadas. Esto puede incluir la adición de nuevas pruebas, la eliminación de pruebas innecesarias o la modificación de la priorización de las pruebas existentes.
4. Plantee 5 herramientas de ejecución de pruebas de automatización 4.1. Selenium: Es una herramienta de automatización de pruebas funcionales de código abierto muy popular que se utiliza para automatizar las pruebas en los navegadores web. Selenium es compatible con muchos lenguajes de programación, incluidos Java, Python, C# y Ruby. También es compatible con diferentes sistemas operativos y navegadores web. 4.2. TestComplete: Es una herramienta de automatización de pruebas funcionales que se utiliza para probar aplicaciones web, de escritorio y móviles. TestComplete admite diferentes lenguajes de programación, como JavaScript, VBScript, Python y C++. También incluye funciones avanzadas para la automatización de pruebas, como el reconocimiento de objetos, el registro de acciones y la generación de informes de prueba detallados. 4.3. JMeter: Es una herramienta de automatización de pruebas de estrés y carga de código abierto que se utiliza para medir el rendimiento y la capacidad de respuesta de una aplicación. JMeter le permite simular la carga de usuarios para probar la capacidad de su aplicación para manejar múltiples solicitudes y transacciones. También puede generar informes detallados sobre el rendimiento de la aplicación durante las pruebas. 4.4. Apache Bench: Es una herramienta de automatización de pruebas de carga de código abierto que se utiliza para medir el rendimiento de servidores web y aplicaciones. Apache Bench le permite simular la carga de usuarios para probar la capacidad de su servidor para manejar múltiples solicitudes y transacciones. También puede generar informes detallados sobre el rendimiento de su servidor durante las pruebas. 4.5. JUnit: Es una herramienta de automatización de pruebas unitarias de código abierto que se utiliza para escribir y ejecutar pruebas unitarias en Java. JUnit es
Al igual que en las funcionales, también usaremos Selenium en las dos pruebas no funcionales que se realizaran a continuación: 6.1. Prueba de rendimiento de carga de una página web En el sitio web de comercio electrónico reciba una gran cantidad de tráfico en momentos específicos del día, como durante las horas pico de compras en línea. Para garantizar que el sitio web pueda manejar este tráfico sin problemas, podemos usar Selenium para crear un script de prueba que mida el tiempo de carga del sitio web en diferentes cargas. 6.1.2. El script podría seguir los siguientes pasos:
Las pruebas unitarias nos permiten asegurarnos de que el método sum de la clase Sum funciona correctamente y devuelve el resultado esperado para una entrada determinada. De esta manera podemos asegurarnos de que cada unidad de código en nuestro programa, como una clase o un método, funcione correctamente de forma aislada antes de integrarlo en un sistema más grande. El proceso de generación de pruebas unitarias utilizando JUnit será el siguiente: Crear una clase de prueba para la clase Sum, llamada SumTest. Esta clase debe importar las bibliotecas necesarias de JUnit y de la clase Sum. Anotar el método que se usará para realizar la prueba con la anotación @Test, lo que indicará a JUnit que este método es una prueba. Crear una instancia de la clase Sum en el método de prueba y llamar al método sum con dos números enteros.
8.3. Descripción de la herramienta: Selenium es una herramienta de prueba de software gratuita y de código abierto que se utiliza para automatizar la prueba de aplicaciones web. Esta herramienta permite crear scripts en diferentes lenguajes de programación (como Java, C#, Python y Ruby, entre otros) que simulan la interacción de un usuario con una aplicación web, hacer clic en botones, llenar formularios y navegar por diferentes páginas. De esta manera, Selenium puede ejecutar pruebas automáticamente y verificar si la aplicación funciona como se esperaba. 8.4. Pruebas que ejecuta: Selenium se utiliza principalmente para ejecutar pruebas funcionales con el fin de verificar que la aplicación web funcione correctamente de acuerdo con los requisitos y especificaciones del proyecto. Sin embargo, también se pueden realizar otros tipos de pruebas con Selenium, como pruebas de regresión (para verificar que las actualizaciones o cambios en la aplicación no afecten negativamente su funcionalidad), integración (para verificar que los diferentes componentes de la aplicación son compatibles). con cada componente de la aplicación). comunicarse correctamente entre sí), pruebas de rendimiento (para evaluar los tiempos de respuesta de la aplicación bajo diferentes cargas de trabajo) y pruebas de seguridad (para identificar posibles vulnerabilidades o debilidades) de la aplicación). 8.5. Características destacadas de Selenium: Compatibilidad con múltiples navegadores: Selenium es compatible con muchos navegadores web, incluidos Google Chrome, Mozilla Firefox, Safari, Internet Explorer, Microsoft Edge y Opera, entre otros. Esto permite ejecutar pruebas en diferentes navegadores y sistemas operativos, lo que ayuda a garantizar la compatibilidad de las aplicaciones en diferentes entornos. Flexibilidad y personalización: Selenium proporciona una variedad de herramientas y opciones de configuración que le permiten personalizar y adaptar sus pruebas a las necesidades de su proyecto. Por ejemplo, puede crear scripts de prueba para escenarios específicos, ajustar los plazos de entrega y los elementos de prueba, y utilizar diferentes estrategias de localización de elementos. Integración con otras herramientas de prueba: Selenium se puede integrar con otras herramientas de prueba y sistemas de automatización, como Jenkins, Appium, Robot Framework y TestNG, entre otros. Esto le permite crear flujos de trabajo automatizados y aprovechar las características de otras herramientas para mejorar el proceso de prueba.