¿Alguien puede dar un ejemplo simple en tiempo real de análisis de valor límite y partición de equivalencia?

Partición de equivalencia

Tipos:

1. Pressman

2. Práctica real (lo que realmente hacemos)

Según Pressman,

1) Si la entrada es un rango de valores, diseñe los casos de prueba para valores 1 válidos y 2 inválidos.

Por ejemplo, el campo de texto Cantidad acepta el rango de valores, válido = 500 e inválido: 90, 600

2) Si la entrada es un conjunto de valores, diseñe los casos de prueba para valores 1 válidos y 2 inválidos.

Digamos que algunas aplicaciones minoristas tienen valores como: Impresora = 10; Escáner = 20; Ratón = 30;

Entonces válido = 10 e inválido: 25 y 40.

3) Si la entrada es booleana, diseñe los casos de prueba para valores verdaderos y falsos. Ej: casillas de verificación, botones de radio, etc.

En PRÁCTICA, hacemos lo siguiente ,

Probar la aplicación derivando los valores a continuación,

90100 1000 2000 3000 4000 5000 6000

Veamos un programa. Comprender la lógica y analizar por qué usamos el método de práctica,

Si (cantidad 5000)

{

Mensaje de error

}

Si (cantidad entre 100 y 2000)

{

Deducir 2%

}

Si (cantidad> 2000)

{

Deducir 3%

}

Cuando se utilizan las técnicas Pressman, se prueban los 2 primeros programas, pero si se utiliza el método Practice, todos estos están cubiertos.

No es necesario que para todas las aplicaciones, se deba utilizar la metodología de práctica. A veces, Pressman también está bien.

Pero, si la aplicación tiene alguna desviación, división o precisión, entonces vamos por el método de práctica.

Si la metodología de práctica tiene que ser utilizada, debería ser: a) Caso específico b) Producto específico

c) El número de divisiones depende de la precisión (2% o 3% de deducción)

Aquí, la técnica de Pressman es suficiente para probar el campo de texto Edad (1 válido y 2 no válido)

Pero, si el campo de texto Edad es para el seguro (10 años o más, políticas obligatorias y diferentes para diferentes grupos de edad), entonces debemos usar el método de Práctica. Dependiendo de esto, se realizan divisiones de valores.

BVA – Análisis del valor límite

Si la entrada es un rango de valores entre A – B, entonces diseñe el caso de prueba para A, A + 1, A-1 y B, B + 1, B – 1.

Por lo tanto, se pueden encontrar varios errores al aplicar BVA porque el desarrollador tiende a cometer errores en esta área al escribir código.

Si (Cantidad <= 100)

{

Lanzar error

}

Si (Cantidad> = 5000)

{

… ..

}

Si ‘igual’ está allí, entonces se espera incluso un valor de 100.

Al comparar la Partición de equivalencia y BVA, los valores de prueba se repiten; si ese es el caso, podemos descuidar la Partición de equivalencia y realizar solo BVA ya que cubre todos los valores.

El análisis del valor límite (BVA) y la división de clases de equivalencia (ECP) son las técnicas utilizadas para reducir el número de casos de prueba a ejecutar. Si tenemos varios casos de prueba y las restricciones de tiempo no nos permiten ejecutarlos a todos, entonces usamos técnicas como BVA y ECP para reducir el número de casos de prueba. En general, se usan cuando hay una GAMA de valores de entrada.

ECP:
EJEMPLO: supongamos que hay un campo de contraseña que puede aceptar letras de az, AZ y los números 1-9.
Ahora, si probamos este campo de contraseña con un enfoque directo (ineficiente), entonces probaremos este campo ingresando
cada alfabeto, es decir, de la a a la z, luego de la A a la Z y luego del 1 al 9 numérico para probar si el campo los acepta con éxito o no. Y además lo probaremos con algunos valores no válidos como] (valor ascii 93) o @ (valor ascii 64)

Entonces, ¿cuántos casos de prueba habría para probar?
az = 26 casos de prueba
AZ = 26 casos de prueba
1-9 = 9 casos de prueba
Y algunos casos de prueba para valores no válidos

Entonces total = 26 + 26 + 9 + algunos casos de prueba para valores no válidos = más de 50 casos de prueba para verificar un campo de contraseña.

Para reducir este número de casos de prueba, utilizamos BVA y ECP. Veamos cómo:

Primero dividimos nuestro rango de entrada en clases de equivalencia. Podemos dividir nuestro rango de entrada en las siguientes clases.

1) primera clase
Dígitos menores de 1
(Valores no válidos)

2) Segunda clase
dígitos 1-9
(valores válidos)

3) Tercera clase
dígitos mayores que 9
(valores no válidos)

4) Cuarta clase
(caracteres menores que A y mayores que 9)
es decir, cuyo valor ascii es menor que el de A y mayor que el de 9.
(valores no válidos)

5) quinta clase
Personajes AZ
(valores válidos)

6) Sexta clase
Caracteres que tienen un valor ASCII mayor que el de Z y menor que una (pequeña ‘a’ de la próxima clase)
(valores no válidos)

7) Séptima clase
Arizona
valores válidos

8) octava clase
Caracteres que tienen un valor ASCII mayor que z (pequeño)
(valores no válidos)

Por lo tanto, la entrada se divide en 8 clases que consisten en valores válidos e inválidos. Ahora la lógica es que en lugar de verificar cada valor, elegiremos un valor de cada clase y revisaremos nuestro campo de contraseña con eso. Si se verifica con este valor, se supone que la prueba se aprobará con cada valor de la clase correspondiente de la que se ha seleccionado este valor.

Entonces, después de ECP ahora tenemos que verificar solo 8 valores (8 casos de prueba) en lugar de 50+.

Por ejemplo, podemos elegir -1 de PRIMERA clase, 6 de SEGUNDA clase, 16 de TERCERA clase, ‘>’ (valor ascii 62) de CUARTA clase, I de QUINTA clase, ‘\’ (valor ascii 92) de SEXTA clase , m de SEPTIMA clase, ‘{‘ (valor ascii 123) de la OCTAVA clase para verificar.

BVA:

En BVA en lugar de simplemente elegir cualquier valor del rango de entrada, elegimos los siguientes valores para fines de prueba:
1) Valor justo debajo del valor mínimo del rango
2) Valor mínimo de rango
3) Valor justo por encima del rango mínimo
4) Valor justo debajo del rango máximo
5) valor máximo
6) valor solo mayor que el valor máximo.

Ejemplo: supongamos que el rango de entrada es de 1-9 dígitos. Luego, después de BVA, utilizaremos los siguientes valores para las pruebas:
1) Valor justo debajo del valor mínimo del rango = 0
2) Valor mínimo de rango = 1
3) Valor justo por encima del rango mínimo = 2
4) Valor justo debajo del rango máximo = 8
5) valor máximo = 9
6) valor solo mayor que el valor máximo = 10

BVA se realiza porque generalmente se supone que podría haber muchos errores presentes en el manejo de valores límite

por aplicación

Si usamos BVA en el ejemplo dado anteriormente en la sección ECP, nuestros valores seleccionados serían:

A) De segunda clase:

1) Valor justo debajo del valor mínimo del rango = 0
2) Valor mínimo de rango = 1
3) Valor justo por encima del rango mínimo = 2
4) Valor justo debajo del rango máximo = 8
5) valor simplemente mayor que el valor máximo = 10 (inmediatamente mayor que 9)

B) De QUINTA CLASE:
1) Valor justo debajo del valor mínimo de rango = ‘@’ (inmediatamente más pequeño que A)
2) Valor mínimo de rango = A
3) Valor justo por encima del rango mínimo = B
4) Valor justo debajo del rango máximo = Y
5) valor máximo = Z
6) valor solo mayor que el valor máximo = ‘[‘ (inmediatamente mayor que Z)

C) De la SÉPTIMA CLASE:
1) Valor justo debajo del valor mínimo de rango = ” ‘(inmediatamente más pequeño que A)
2) Valor mínimo del rango = a
3) Valor justo por encima del rango mínimo = b
4) Valor justo debajo del rango máximo = y
5) valor máximo = z
6) valor simplemente mayor que el valor máximo = ‘{‘ (inmediatamente mayor que Z)
También puede consultar ¿Qué es el análisis del valor límite y para qué se utiliza?

More Interesting

¿Qué se debe hacer para crear una atmósfera en los colegios / escuelas de la India, para que los estudiantes comiencen a aprender programación desde su primer año de universidad / a una edad temprana?

¿Cuál es la mejor manera de diseñar un programa de autoeducación que aprenda a crear / construir software?

¿Qué nugget de oro de ingeniería de software has descubierto en Internet?

¿Cuál es un gran ejemplo de pensar en 'múltiples niveles de abstracción'?

¿Cómo se compararían las siguientes pasantías de desarrollo: Amazon, 10gen / MongoDB, Zynga, Twitter?

¿Cómo es trabajar en el equipo de calidad de anuncios en Google?

Como ingeniero de software de sistemas, ¿de dónde obtiene su satisfacción?

¿Por qué ya no hay puestos para ingenieros de control de calidad manuales?

¿Cuáles son algunos ejemplos de actividades de gestión de configuración de software?

Estoy haciendo un doctorado en física computacional. ¿Trabajar como ingeniero de software es realmente una opción viable después de graduarme?

¿Qué herramienta de desarrollo, o característica de herramienta, mejoraría más su productividad y calidad?

Software de la mesa de ayuda de TI: ¿Alguien puede comparar ServiceNow con Remedy / RemedyForce de BMC? Estoy tratando de comprender mejor los pros y los contras de cada uno.

¿Te ha gustado estudiar Sistemas Cognitivos en la Universidad de Columbia Británica?

¿Por qué es engañoso llamarte desarrollador de pila completa en LinkedIn solo porque te graduaste de bootcamp de codificación?

¿Podría alguien ayudarme a comprender la siguiente documentación de la documentación de Django?