Pruebas de transición de estado: diagrama y técnica (ejemplo)
¿Qué son las pruebas de transición estatal?
Pruebas de transición estatal es una técnica de prueba de caja negra en la que los cambios realizados en las condiciones de entrada provocan cambios de estado o cambios de salida en la aplicación bajo prueba (AUT). La prueba de transición de estado ayuda a analizar el comportamiento de una aplicación para diferentes condiciones de entrada. Los evaluadores pueden proporcionar valores de prueba de entrada positivos y negativos y registrar el comportamiento del sistema.
Es el modelo en el que se basa el sistema y las pruebas. Cualquier sistema en el que se obtenga una salida diferente para la misma entrada, dependiendo de lo que haya sucedido antes, es un sistema de estados finitos.
Técnica de prueba de transición estatal es útil donde lo necesita probar diferentes transiciones del sistema.
¿Cuándo utilizar la transición estatal?
- Esto se puede utilizar cuando un evaluador prueba la aplicación para un conjunto finito de valores de entrada.
- Cuando el evaluador intenta probar la secuencia de eventos que ocurren en la aplicación bajo prueba. Es decir, esto permitirá al evaluador probar el comportamiento de la aplicación para una secuencia de valores de entrada.
- Cuando el sistema bajo prueba depende de los eventos/valores del pasado.
¿Cuándo no confiar en la transición estatal?
- Cuando la prueba no se realiza para combinaciones de entradas secuenciales.
- Si las pruebas se van a realizar para diferentes funcionalidades, como pruebas exploratorias
Diagrama de transición de cuatro partes del estado
Hay 4 componentes principales del modelo de transición estatal como se muestra a continuación
1) Estados que el software podría obtener
2) Transición de un estado a otro
3) eventos que origina una transición como cerrar un expediente o retirar dinero
4) Acciones que resultan de una transición (un mensaje de error o recibir el efectivo).
Diagrama de transición de estados y tabla de transición de estados
Hay dos formas principales de representar o diseñar la transición de estado: el diagrama de transición de estado y la tabla de transición de estado.
En el diagrama de transición de estados, los estados se muestran en recuadros de texto y la transición se representa mediante flechas. También se lo denomina diagrama o gráfico de estados. Resulta útil para identificar transiciones válidas.
En la tabla de transición de estados, todos los estados se enumeran en el lado izquierdo y los eventos se describen en la parte superior. Cada celda de la tabla representa el estado del sistema después de que haya ocurrido el evento. También se le llama Tabla de Estado. Es útil para identificar transiciones no válidas.
Cómo hacer una transición de estado (ejemplos de una transición de estado)
Ejemplo 1:
Consideremos una función de sistema de cajero automático en la que si el usuario ingresa una contraseña no válida tres veces, la cuenta se bloqueará.
En este sistema, si el usuario ingresa una contraseña válida en cualquiera de los primeros tres intentos, el usuario iniciará sesión exitosamente. Si el usuario ingresa una contraseña no válida en el primer o segundo intento, se le pedirá que vuelva a ingresar la contraseña. Y finalmente, si el usuario ingresa una contraseña incorrecta 3rd momento, la cuenta será bloqueada.
Diagrama de transición de estado
En el diagrama, cada vez que el usuario ingresa el PIN correcto, pasa al estado Acceso concedido, y si ingresa la contraseña incorrecta, pasa al siguiente intento y si hace lo mismo para los 3rd momento en que se alcanza el estado de bloqueo de la cuenta.
Tabla de transición de estado
PIN correcto | PIN incorrecto | |
---|---|---|
S1) Inicio | S5 | S2 |
S2) 1st intento | S5 | S3 |
S3) 2nd intento | S5 | S4 |
S4) 3rd intento | S5 | S6 |
S5) Acceso concedido | – | – |
S6) Cuenta bloqueada | – | – |
En la tabla, cuando el usuario ingresa el PIN correcto, el estado cambia a S5, que es Acceso concedido. Y si el usuario ingresa una contraseña incorrecta, pasará al siguiente estado. Si el hace lo mismo 3rd En ese momento, alcanzará el estado de cuenta bloqueada.
Ejemplo 2:
Consulte este video de Pruebas de Transición Estatal, antes de consultar el siguiente ejemplo:
Haga clic aquí si el video no es accesible
En la pantalla de inicio de sesión de reserva de vuelo, considere que debe ingresar el nombre y la contraseña del agente correctos para acceder al solicitud de reserva de vuelo.
Le brinda acceso a la aplicación con la contraseña y el nombre de inicio de sesión correctos, pero ¿qué pasa si ingresó la contraseña incorrecta?
La aplicación permite tres intentos y, si los usuarios ingresan la contraseña incorrecta en el cuarto intento, el sistema cierra la aplicación automáticamente.
State Graphs le ayuda a determinar las transiciones válidas que se van a probar. En este caso, es obligatorio realizar la prueba con la contraseña correcta y con una contraseña incorrecta. Para el escenarios de prueba, inicia sesión en 2ndde 3rd y séptimath Cualquier intento podría ser probado.
Puede utilizar la tabla de estado para determinar transiciones del sistema no válidas.
En una tabla de estados, todos los estados válidos se enumeran en el lado izquierdo de la tabla y los eventos que los causan en la parte superior.
Cada celda representa el estado al que se moverá el sistema cuando ocurra el evento correspondiente.
Por ejemplo, mientras está en el estado S1 ingresa una contraseña correcta, se le llevará al estado S6 (Acceso concedido). Supongamos que si ingresó una contraseña incorrecta en el primer intento, se le llevará al estado S3 o 2.° intento.
Del mismo modo puedes determinar todos los demás estados.
Con este método se resaltan dos estados no válidos. Supongamos que está en el estado S6, es decir, que ya ha iniciado sesión en la aplicación, abre otra instancia de reserva de vuelo e ingresa contraseñas válidas o no válidas para el mismo agente. Es necesario probar la respuesta del sistema para tal escenario.
Ventajas y desventajas de la técnica de transición estatal
Ventajas | Desventajas |
---|---|
Esta técnica de prueba proporcionará una representación pictórica o tabular del comportamiento del sistema que hará que el evaluador cubra y comprenda el comportamiento del sistema de manera efectiva. | La principal desventaja de esta técnica de prueba es que no podemos confiar en ella siempre. Por ejemplo, si el sistema no es finito (no está en orden secuencial), esta técnica no se puede utilizar. |
Al utilizar esta prueba, el evaluador de la técnica puede verificar que todas las condiciones estén cubiertas y que se capturen los resultados. | Otra desventaja es que hay que definir todos los estados posibles de un sistema. Si bien esto está bien para sistemas pequeños, pronto se descompone en sistemas más grandes a medida que hay una progresión exponencial en el número de estados. |
Resumen
- La prueba de transición de estado se define como la técnica de prueba en la que los cambios en las condiciones de entrada provocan cambios de estado en la aplicación bajo prueba.
- In Ingeniería de Software, La técnica de prueba de transición de estado es útil cuando necesita probar diferentes transiciones del sistema.
- Dos formas principales de representar o diseñar la transición de estado, el diagrama de transición de estado y la tabla de transición de estado.
- En el diagrama de transición de estados, los estados se muestran en recuadros de texto y la transición se representa mediante flechas.
- En la tabla de transición de estados, todos los estados se enumeran en el lado izquierdo y los eventos se describen en la parte superior.
- La principal ventaja de esta técnica de prueba es que proporcionará una representación pictórica o tabular del comportamiento del sistema que hará que el evaluador cubra y comprenda el comportamiento del sistema de manera eficiente.
- La principal desventaja de esta técnica de prueba es que no podemos confiar en ella siempre.