9.5. Pruebas funcionales¶
Son un tipo de prueba de software que se enfoca en verificar que el sistema cumpla con los requisitos funcionales especificados. Estas pruebas se centran en validar que las funciones y características del software se comporten de acuerdo con las expectativas del usuario, sin tener en cuenta la estructura interna del código fuente.
Mientras se ejecutan las pruebas funcionales, se simulan escenarios de uso real para asegurarse de que el software realice correctamente las tareas para las cuales fue diseñado. Son esenciales para garantizar que la aplicación cumpla con los requisitos de negocio y brinde una experiencia de usuario satisfactoria.
Truco
Un ejemplo de prueba funcional, es una aplicación web simula la ejecución de una navegador web el cual abre la dirección URL e interactual con la misma.
9.5.1. Importancia¶
Estas pruebas garantizan que el software cumple con su propósito, brindando una experiencia de usuario óptima y minimizando errores en producción.
9.5.2. Tipos¶
Pruebas de Caja Negra: Evalúan el sistema sin conocer su estructura interna.
Pruebas de Regresión: Aseguran que las modificaciones no afecten funcionalidades previas.
Pruebas de Aceptación: Verifican si el software cumple con los criterios establecidos por el cliente.
Pruebas de Sistema: Evaluación integral del software en su entorno real.
9.5.3. Instalación¶
Al realizar pruebas funcionales pueden ser manuales o automatizadas necesita el módulo selenium. Esto significa que
debe instalar selenium ejecutando los siguientes comandos correspondiente a cada sistema operativo, los cuales se
presentan a continuación:
Para realizar pruebas funcionales en una aplicación con selenium requiere
instalar las siguientes librerías/módulos:
Instalar el módulo
selenium, ejecutando el siguiente comando:pip3 install selenium
Instalar el módulo
selenium, ejecutando el siguiente comando:pip3 install selenium
Puede probar si la instalación se realizo correctamente, ejecutando el siguiente comando correspondiente a tu sistema operativo:
python3 -c "import selenium ; print(selenium.__version__)"
python3 -c "import selenium ; print(selenium.__version__)"
Si muestra el número de la versión instalada de selenium, tiene correctamente instalado
el módulo. Con esto, ya tiene todo listo para continuar.
9.5.4. Práctica - Caso real¶
A continuación se presenta una práctica más real de implementar el uso de proyectos
con selenium, a continuación la estructura de proyecto llamado functionales:
9.5.4.1. Estructura de archivos¶
Para crear la estructura de archivos del proyecto selenium debe ejecutar los siguientes comandos:
Crear y acceder al directorio functionales en un solo comando, ejecutando el siguiente comando:
mkdir -p ~/proyectos/pruebas/functionales && cd $_
El comando anterior crea la siguiente estructura de directorios:
proyectos/
└── pruebas/
└── functionales/
Si tiene la estructura de archivo previa, entonces puede continuar con la siguiente sección.
Debe crear el directorio functionales, ejecutando el siguiente comando:
md .\proyectos\pruebas\functionales
Debe acceder al directorio , ejecutando el siguiente comando:
cd .\proyectos\pruebas\functionales
El comando anterior crea la siguiente estructura de directorios:
proyectos/
└── pruebas/
└── functionales/
Si tiene la estructura de archivo previa, entonces puede continuar con la siguiente sección.
A continuación se presenta y explica el uso de cada archivo para este proyecto:
Archivo functtest_navigate_url.py
Módulo de prueba funcional para buscar el elemento HTML title y verificar el valor del título
de la página.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
Archivo test_find_element.py
Módulo de prueba funcional para buscar el nombre del paquete en la página con expresión xpath
y verificando el valor del elemento.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | |
Para ejecutar el código del proyecto llamado functionales abra una consola de comando, cree la
siguiente estructura de directorio y acceda al mismo donde se encuentra el programa:
proyectos/
└── pruebas/
└── functionales/
├── __init__.py
├── test_navigate_url.py
└── test_find_element.py
Si tiene la estructura de archivo previa, entonces puede continuar los procesos de ejecución del código fuente.
Teniendo creada la anterior estructura de proyecto, vuelva a ejecutar ahora el módulo con el siguiente comando, el cual a continuación se presentan el correspondiente comando de tu sistema operativo:
Truco
Para ejecutar el código fuente de esta práctica debe invocar al módulo test_navigate_url.py,
abra una consola de comando, acceda al directorio donde se encuentra la estructura previa
y ejecute el siguiente comando:
python3 test_navigate_url.py
El anterior código al ejecutar debe mostrar el siguiente mensaje:
✅ Successed Test: selenium · PyPI page launched successfully
Este es el funcionamiento normal del módulo test_navigate_url.py. Por defecto siempre devolvera
el valor Python 3.11+.
Truco
Para ejecutar el código fuente de esta práctica debe invocar al módulo test_find_element.py,
abra una consola de comando, acceda al directorio donde se encuentra la estructura previa
y ejecute el siguiente comando:
python3 test_find_element.py
El anterior código al ejecutar debe mostrar el siguiente mensaje:
✅ Successed Test: selenium 4.29.0 version found
Si la ejecución anterior muestra el mensaje anterior, quiere decir que la prueba unitaria fue exitosa.
Truco
Para ejecutar el código fuente de esta práctica debe invocar al módulo test_navigate_url.py,
abra una consola de comando, acceda al directorio donde se encuentra la estructura previa
y ejecute el siguiente comando:
python3 test_navigate_url.py
El anterior código al ejecutar debe mostrar el siguiente mensaje:
✅ Successed Test: selenium · PyPI page launched successfully
Este es el funcionamiento normal del módulo test_navigate_url.py. Por defecto siempre devolvera
el valor Python 3.11+.
Truco
Para ejecutar el código fuente de esta práctica debe invocar al módulo test_find_element.py,
abra una consola de comando, acceda al directorio donde se encuentra la estructura previa
y ejecute el siguiente comando:
python3 test_find_element.py
El anterior código al ejecutar debe mostrar el siguiente mensaje:
✅ Successed Test: selenium 4.29.0 version found
Si la ejecución anterior muestra el mensaje anterior, quiere decir que la prueba unitaria fue exitosa.
Así de esta forma puede replicar una práctica real de un proyecto para realizar pruebas funcionales
usando selenium para la pagina web: https://pypi.org/project/selenium/4.29.0/
Importante
Usted puede descargar el código usado en esta sección haciendo clic en los siguientes enlaces:
Las pruebas funcionales son fundamentales para garantizar que una aplicación funcione correctamente desde la perspectiva del usuario. Implementarlas adecuadamente ayuda a mejorar la calidad del software y evitar fallos en producción.
Ver también
Consulte la sección de lecturas suplementarias del entrenamiento para ampliar su conocimiento en esta temática.
¿Cómo puedo ayudar?
¡Mi soporte está aquí para ayudar!
Mi horario de oficina es de lunes a sábado, de 9 AM a 5 PM. UTM - Madrid, España.
La hora aquí es actualmente 7:35 PM UTM.
Mi objetivo es responder a todos los mensajes dentro de un día hábil.