Tipos de prueba de software
Tipos de prueba de software
Pruebas funcionales
Las pruebas funcionales suelen usar técnicas de caja negra y casos basados en las especificaciones para comprobar si el software cumple los requisitos del cliente. Las siguientes comprobaciones sirven de guía.
- Entiende con exactitud qué debe hacer la aplicación.
- Prepara datos de prueba adecuados, incluidas entradas válidas e inválidas.
- Compara el resultado obtenido con esos datos con la especificación funcional.
- Cubre los escenarios requeridos y da prioridad a los riesgos más altos. Rara vez es viable probar todos los escenarios posibles.
- Registra el resultado real de cada entrada y compáralo con el resultado esperado.
Aplica comprobaciones funcionales en distintos niveles de prueba y después de los cambios.
- Pruebas unitarias
- Pruebas de integración
- Pruebas de sistema
- Pruebas de regresión
- Pruebas de aceptación
El rendimiento, la seguridad y la calidad de la interfaz de usuario son requisitos no funcionales importantes. Las pruebas no funcionales comprueban estos atributos. Sus tipos principales incluyen los siguientes.
- Pruebas de rendimiento
- Pruebas de usabilidad
- Pruebas de seguridad
- Pruebas de portabilidad
Las pruebas de usabilidad comprueban qué tan fácil es usar el software. Este enfoque de caja negra plantea tres preguntas. ¿Resulta cómodo usarlo? ¿Puede el usuario manejarlo? ¿Puede aprender a usarlo? La usabilidad incluye los siguientes aspectos.
- Con qué facilidad se adaptan los usuarios cuando prueban el sistema por primera vez.
- Con qué eficiencia realizan las tareas, incluida la rapidez con que las terminan.
- Con qué facilidad pueden volver a usar el sistema después de un periodo prolongado.
- Si encuentran errores y con qué facilidad se recuperan de ellos.
- Si la experiencia resulta satisfactoria para los usuarios.
Pruebas de la interfaz gráfica de usuario
Las pruebas de la interfaz gráfica de usuario (GUI) comprueban que la interfaz funcione correctamente y cumpla los estándares de calidad establecidos. Revisa los siguientes elementos.
- Distribución visual
- Colores
- Tipografías
- Tamaño del texto
- Etiquetas
- Funciones de los cuadros de texto
- Formato del texto
- Leyendas
- Botones
- Listas
- Iconos
- Enlaces
- Contenido
- Atajos de teclado
- El indicador de procesamiento, como un reloj de arena, mientras el sistema está trabajando
La interfaz gráfica de usuario define el aspecto y el comportamiento visual de una aplicación. Las pruebas fuera de esa interfaz cubren otras formas de interacción, como la línea de comandos, los procesos por lotes y los eventos que activan casos de uso.
Pruebas de portabilidadLas pruebas de portabilidad comprueban cómo afecta un cambio de entorno al comportamiento y al rendimiento del software. Por ejemplo, prueba una aplicación en distintos sistemas operativos o una aplicación web en distintos navegadores. Esto importa cuando el cliente piensa utilizar más de una plataforma.
Las pruebas de portabilidad forman parte de las pruebas de sistema. Instala el software en distintos entornos o compila y ejecuta sus archivos ejecutables en distintas plataformas. Ten en cuenta los requisitos de portabilidad durante el diseño y el desarrollo. Realiza estas pruebas después de las de integración y utiliza entornos de prueba adecuados.
Pruebas de seguridad, autenticación y autorizaciónLas pruebas de seguridad buscan vulnerabilidades y comprueban que el software pueda proteger la información confidencial del cliente cuando sea necesario. Dos áreas importantes son la autenticación y la autorización.
La autenticación comprueba la identidad de quien intenta acceder a la aplicación. Un ejemplo es el uso de un nombre de usuario y una contraseña. Si la combinación es incorrecta, se deniega el acceso porque la identidad declarada no se ha verificado.
La autorización controla el acceso a datos, funciones y casos de uso restringidos. La autenticación solo acredita la identidad. Por ejemplo, al iniciar sesión en una red social obtienes acceso a los detalles de tu propia cuenta. El acceso a otras cuentas sigue sujeto a restricciones.
Las pruebas de seguridad también abarcan la confidencialidad, la integridad, la disponibilidad, el no repudio, la seguridad de los datos, la inyección SQL, la ejecución de scripts entre sitios y otros aspectos de seguridad. Es un campo especializado.
Pruebas de integridad de datos y bases de datosLas pruebas de integridad de datos comprueban que los datos almacenados sean correctos y produzcan los resultados esperados. Comprueba si se pueden recuperar datos en blanco, si los datos se validan antes de guardarlos, si los datos almacenados se pueden actualizar y si las pruebas cubren los tipos de archivos de datos requeridos. El objetivo es mantener datos correctos y coherentes durante todo su ciclo de vida.
Las pruebas de integridad de bases de datos comprueban los métodos y procesos que se usan para acceder a la base de datos, gestionar los datos y procesarlos. Los datos deben quedar protegidos contra la corrupción y contra la creación, modificación o eliminación involuntaria. Incluye casos de prueba para cada una de estas condiciones.
Pruebas de tolerancia a fallos y conmutación por errorLas pruebas de tolerancia a fallos comprueban cómo responde una aplicación ante fallos en condiciones reales. Los escenarios incluyen errores de conexión de red, problemas al conectarse al servidor de aplicaciones y fallos al conectar con la base de datos.
Las pruebas de conmutación por error comprueban si el sistema pasa a un componente o servicio de reserva tras un fallo grave, como una avería de hardware o una caída. Comprueba que el trabajo esencial pueda continuar durante el cambio. Después, las pruebas de recuperación pueden comprobar si el servicio original vuelve al estado esperado.
Pruebas de configuración y despliegueLas pruebas de configuración comprueban el rendimiento con distintas configuraciones del sistema. Ayudan a determinar los tiempos de respuesta en el entorno de pruebas y la configuración necesaria para alcanzar el rendimiento esperado. También facilitan la migración entre plataformas al comprobar la compatibilidad con el nuevo entorno y sus especificaciones de hardware.
Las pruebas de despliegue comprueban que el sistema desplegado funcione correctamente. Busca problemas de rendimiento o caídas, comprueba el funcionamiento en condiciones reales y verifica que el software se haya desplegado correctamente en la carpeta prevista.
Pruebas de regresiónEnvía los defectos detectados para que se corrijan. Confirma que la corrección resuelve el problema original. Después, ejecuta pruebas de regresión para detectar efectos no deseados en el área modificada, en otras partes de la aplicación o en la lógica de negocio. Usa los resultados para decidir si el software está listo para la siguiente fase de pruebas.
Pruebas de rendimientoLas pruebas de rendimiento investigan la latencia de red, la presentación de datos, el procesamiento de transacciones en la base de datos y el reparto de carga entre servidores. Se centran en problemas de rendimiento que van más allá de los defectos de funciones individuales. Úsalas para evaluar la estabilidad, la escalabilidad, la velocidad, los tiempos de respuesta y la presentación de los datos.
Pruebas de carga y medición comparativa del rendimientoLas pruebas de carga comprueban cómo se comporta el software cuando alcanza su carga máxima o sus picos de carga. Herramientas como JMeter, LoadRunner y Silk Performer crean usuarios virtuales y ejecutan scripts para simular el acceso simultáneo. Quien realiza la prueba controla el número de usuarios virtuales y observa el comportamiento del sistema.
Pruebas de estrésLas pruebas de estrés crean deliberadamente condiciones anormales y observan el rendimiento. Aplica cargas por encima de los límites aceptables o retira recursos para encontrar el punto en el que el software falla. Algunos ejemplos son detener y reiniciar una base de datos, cerrar o reiniciar puertos de red al azar y ejecutar procesos que consumen grandes cantidades de recursos.
| Testing Type | Unit Testing | Integration Testing | System Testing | Acceptance Testing |
|---|---|---|---|---|
| Functional Testing | Yes | Yes | Yes | Yes |
| Configuration Testing | No | No | Yes | Yes |
| User Interface Testing | No | No | Yes | Yes |
| Usability Testing | No | No | Yes | Yes |
| Installation Testing | No | No | Yes | Yes |
| Document Testing | Yes | Yes | Yes | Yes |
| Performance Testing | Yes | Yes | Yes | Yes |
| Security Testing | No | Yes | Yes | Yes |
| Scalability Testing | No | Yes | Yes | No |
Resumen de los tipos de pruebas de software
¡Te garantizamos que con tu formación gratuita en línea aprobarás el examen de certificación en pruebas de software!
-
01
Inscríbete en línea
Elige tu certificación acreditada y completa la inscripción.
-
02
Recibe tu código de acceso
Recibirás tu código personal de acceso al examen de inmediato por correo electrónico.
-
03
Prepárate y haz el examen
Estudia con tu formación gratuita y responde en línea a 50 preguntas de opción múltiple.
-
04
Obtén tu credencial de por vida
Recibe tu certificado válido en todo el mundo y una insignia digital verificable.
TU FORMACIÓN PRÉMIUM GRATUITA EN LÍNEA
Ya tienes disponible la segunda edición de Software Testing Revealed.
Preparamos esta formación con un grupo de reconocidos líderes empresariales y de equipos, formadores, mentores, expertos y referentes en pruebas de software de todos los sectores principales. Cualquier persona que visite International Software Test Institute™ puede acceder a ella. Encuentra los materiales en las secciones Tu libro gratuito de pruebas de software y Tu formación prémium gratuita en pruebas de software del menú superior.
Estos materiales son propiedad intelectual de International Software Test Institute™ y están protegidos por derechos de autor. Los compartimos gratuitamente con todos porque poner nuestra experiencia al alcance de los profesionales de pruebas de software ayuda a que el sector avance.
Tu examen de certificación consta de preguntas de opción múltiple. Estudia la formación en línea para adquirir los conocimientos que necesitas para aprobar el examen y obtener tu certificación en pruebas de software.
¡Te garantizamos que con tu formación prémium gratuita en línea aprobarás el examen de certificación en pruebas de software!
