¿Qué son las pruebas de dominio en las pruebas de software? (con ejemplo)

⚡ Resumen inteligente

Las pruebas de dominio comprueban una aplicación proporcionándole el conjunto mínimo útil de entradas, que abarca valores válidos, inválidos y límite, y confirman que solo los valores dentro del rango aceptado producen la salida requerida.

  • 🔘 Idea central: Divide cada dominio de entrada en clases de equivalencia y prueba un valor representativo por clase, no todas las entradas posibles.
  • ☑️ Enfoque en los límites: Los valores que se encuentran en el límite de una clase, y justo fuera de él, exponen defectos de desviación de una unidad con mucha más frecuencia que los valores intermedios.
  • Técnicas combinadas: El análisis de clases de equivalencia decide el grupoping; el análisis de valores límite decide qué miembro de cada grupo ejecutar.
  • 🧪 Ejemplo trabajado: Un módulo de venta de entradas que asigna competiciones por edad y género reduce cuatro categorías de edad a un conjunto de prueba breve y de alto valor.
  • 📈 Dependencia del conocimiento: Para determinar si un resultado es correcto, se necesitan reglas de negocio, por lo que esta técnica se adapta a pequeños fragmentos de lógica bien definidos.

Pruebas de dominio en pruebas de software con clases de equivalencia y valores límite

¿Qué es la prueba de dominio?

Pruebas de dominio es un pruebas de software Proceso en el que se prueba la aplicación proporcionándole un número mínimo de entradas y evaluando sus salidas correspondientes. El objetivo principal de las pruebas de dominio es verificar si la aplicación de software acepta entradas dentro del rango aceptable y proporciona la salida requerida.

Es un prueba funcional Técnica en la que se prueba la salida de un sistema con un número mínimo de entradas para asegurar que el sistema no acepte valores de entrada inválidos y fuera de rango. También se considera una de las técnicas importantes. pruebas de caja blanca métodos. Además, verifica que el sistema no debe aceptar entradas, condiciones e índices fuera del rango especificado o válido.

Las pruebas de dominio difieren para cada dominio específico, por lo que se necesitan conocimientos específicos del dominio para probar un sistema de software.

Práctica más sencilla de pruebas de dominio

En las pruebas de dominio, dividimos un dominio en subdominios (clases de equivalencia) y luego probamos usando valores de cada subdominio. Por ejemplo, si se ha proporcionado un sitio web (dominio) para probar, dividiremos el sitio web en pequeñas porciones (subdominio) para facilitar la prueba.

El dominio puede implicar la prueba de una sola variable de entrada o una combinación de variables de entrada.

Los profesionales suelen estudiar los casos más sencillos de pruebas de dominio bajo otros dos nombres: "pruebas de límites" y "análisis de clases de equivalencia".

Prueba de límitesAnálisis de valor límite (BVA) se basa en realizar pruebas en los límites entre particiones. Probaremos tanto los valores de entrada válidos como los inválidos en las particiones/clases.

Pruebas de clases de equivalencia – La idea detrás de esta técnica es dividir (es decir, dividir) un conjunto de condiciones de prueba en grupos o conjuntos que puedan considerarse iguales (es decir, el sistema debería manejarlos de manera equivalente), de ahí la "partición de equivalencia".

Esa forma simplificada se aplica a las pruebas de dominio.

  • Sólo para pruebas de variables de entrada.
  • Solo cuando se prueba en el Nivel del sistema
  • Sólo cuando se prueba uno a la vez
  • Sólo cuando se prueba de una manera muy superficial.

Se puede simplificar de la siguiente manera:

Variable Clase de equivalencia de clase válida Clase de equivalencia de clase no válida Límites y casos especiales Notas
X 0-100 0
100
<0 -1
> 100 101

Explicación:

  • Si un campo acepta rangos de 0 a 100, no debería aceptar -1 ni 101, ya que son entradas no válidas y están fuera de los límites.
  • El campo debe aceptar valores como 0, 100 y cualquier número entre ellos.

Construyendo mesas como estas (en la práctica)

  • Para elaborar un análisis de clases de equivalencia a lo largo del tiempo, introduzca la información en una hoja de cálculo. Comience por enumerar las variables. Añada información sobre ellas a medida que la obtenga.
  • La tabla debería contener finalmente todas las variables. Esto significa todas las variables de entrada, todas las variables de salida y cualquier variable intermedia que se pueda observar.
  • En la práctica, la mayoría de estas tablas están incompletas. Las mejores enumeran todas las variables y añaden detalles para las más importantes.

Estrategia de prueba de dominio

Al realizar pruebas de dominio, debe tener en cuenta lo siguiente:

  • ¿Qué dominio estamos probando?
  • ¿Cómo agrupar los valores en clases?
  • ¿Qué valores de las clases se probarán?
  • ¿Cómo determinar el resultado?

¿Qué dominio estamos probando?

Todo dominio que analizamos posee funcionalidades de entrada y salida. Se deben ingresar variables de entrada y verificar la salida correspondiente. El siguiente diagrama ilustra esta relación entre entrada y salida.

Estrategia de prueba de dominio que muestra cómo las variables de entrada fluyen hacia un dominio y producen una salida.

Ejemplo de prueba de dominio

Considere un escenario de prueba de entrada única:

C = a+b, donde a y b son variables de entrada y C es la variable de salida.

En el ejemplo anterior, no es necesaria ninguna clasificación, ni tampoco se requiere ninguna combinación de las variables.

Considere las siguientes entradas múltiples y el escenario de salida apropiado:

Consideremos una feria de juegos para niños. Se han programado seis competiciones y se deben expedir entradas según la edad y el género. La venta de entradas es uno de los módulos que se probarán para evaluar el funcionamiento general de la feria.

Según el escenario, obtuvimos seis escenarios según la edad y las competiciones:

  • Los niños de entre 5 y 10 años deben participar en la actividad de contar cuentos.
  • Las niñas de entre 5 y 10 años deben participar en el concurso de dibujo.
  • Los niños de entre 10 y 15 años deben participar en el cuestionario.
  • Las niñas de entre 10 y 15 años de edad deben participar en la redacción de ensayos.
  • Niños y niñas de hasta 5 años deben participar en el Concurso de Rimas.
  • Mayores de 15 años, tanto niños como niñas deben participar en el concurso de poesía.

Aquí la entrada será Edad y Género, y por lo tanto se emitirá el boleto para la competencia. Este caso es donde la partición de entradas, o simplemente grupoping de valores, entra en escena.

¿Cómo agrupar los valores en clases?

Particionar algunos valores significa dividirlos en partes que no se superpongan.ping subconjuntos.

Como comentamos anteriormente, existen dos tipos de partición:

  • Partición de equivalencia – La partición de equivalencia es una técnica de prueba de software que divide los datos de entrada de una unidad de software en particiones de datos equivalentes de las cuales Casos de prueba se pueden derivar. En principio, los casos de prueba están diseñados para cubrir cada partición al menos una vez.
  • Análisis de valor límite – El análisis de valores límite es una técnica de prueba de software en la que las pruebas se diseñan para incluir representantes de los valores límite en un rango. La idea proviene del límite.

En el ejemplo anterior, dividimos los valores en subconjuntos. Dividimos la edad en las siguientes clases:

  • Clase 1: Niños de entre 5 y 10 años.
  • Clase 2: Niños con grupo de edad menor de 5 años.
  • Clase 3: Niños de entre 10 y 15 años.
  • Clase 4: Niños mayores de 15 años.

¿Qué valores de las clases se probarán?

Los valores seleccionados para la prueba deben ser valores límite:

  • Los límites son representantes de las clases de equivalencia de las que los extraemos. Tienen más probabilidades de revelar un error que otros miembros de la clase, por lo que son mejores representantes.
  • El mejor representante de una clase de equivalencia es un valor entre el rango.

Para el ejemplo anterior tenemos las siguientes clases para probar:

Por ejemplo, para el escenario n.° 1:

Clase 1: Niños de entre 5 y 10 años (edad >5 y <=10)

Valores límite:

  • Los valores deben ser iguales o menores que 10. Por lo tanto, la edad de 10 años debe incluirse en esta clase.
  • Los valores deben ser mayores que 5. Por lo tanto, la edad de 5 años no debe incluirse en esta clase.
  • Los valores deben ser iguales o inferiores a 10. Por lo tanto, la edad de 11 años no debe incluirse en esta clase.
  • Los valores deben ser mayores que 5. Por lo tanto, los 6 años deben incluirse en esta clase.

Valores de partición de equivalencia:

Se hace referencia a la partición de equivalencia cuando se tiene que probar solo una condición de cada partición. En esto, asumimos que si una condición en una partición funciona, entonces todas las condiciones deberían funcionar. De la misma manera, si una condición en esa partición no funciona, entonces asumimos que ninguna de las otras condiciones funcionará. Por ejemplo,

(Edad >5 y <=10)

Dado que los valores del 6 al 10 son válidos, se debe seleccionar uno de los siguientes: 6, 7, 8, 9 y 10. Por lo tanto, la edad seleccionada "8" es una edad válida para el grupo de edad comprendido entre (Edad > 5 y <= 10). Este tipo de partición se denomina partición de equivalencia.

Escenario Valores límite a tomar Valores de partición de equivalencia
Niño – Edad >5 y <=10 Edad de entrada = 6
Edad de entrada = 5
Edad de entrada = 11
Edad de entrada = 10
Edad de entrada = 8
Niña – Edad >5 y <=10 Edad de entrada = 6
Edad de entrada = 5
Edad de entrada = 11
Edad de entrada = 10
Edad de entrada = 8
Niño – Edad >10 y <=15 Edad de entrada = 11
Edad de entrada = 10
Edad de entrada = 15
Edad de entrada = 16
Edad de entrada = 13
Niña – Edad >10 y <=15 Edad de entrada = 11
Edad de entrada = 10
Edad de entrada = 15
Edad de entrada = 16
Edad de entrada = 13
Edad<=5 Edad de entrada = 4
Edad de entrada = 5
Edad de entrada = 3
Edad> 15 Edad de entrada = 15
Edad de entrada = 16
Edad de entrada = 25

¿Cómo determinamos si el programa pasó o no la prueba?

La transmisión de la funcionalidad no solo depende de los resultados de los escenarios anteriores. La entrada proporcionada y la salida esperada nos darán los resultados, y esto requiere conocimiento del dominio.

Determinación de los resultados del ejemplo: la siguiente pantalla muestra el resultado de la emisión de billetes para cada combinación de edad y género.

Salida de tickets para cada combinación de edad y género utilizada para determinar los resultados de las pruebas de dominio

Por lo tanto, si todas las pruebas anteriores se superan, el dominio de emisión de boletos en la competencia se considera superado. De lo contrario, el dominio se considera reprobado.

Estructura de prueba de dominio

Por lo general, los evaluadores siguen los siguientes pasos en las pruebas de dominio. Estos pasos pueden personalizarse u omitirse según nuestras necesidades de prueba.

  • Identificar las variables potencialmente interesantes.
  • Identifique las variables que puede analizar ahora y ordénelas (de menor a mayor y viceversa).
  • Cree e identifique valores límite y valores de clase de equivalencia como se indica arriba.
  • Identificar las dimensiones secundarias y analizarlas de forma clásica. (En el ejemplo anterior, el género es la dimensión secundaria).
  • Identificar y probar variables que contienen resultados (variables de salida).
  • Evalúe cómo el programa utiliza el valor de esta variable.
  • Identificar variables adicionales potencialmente relacionadas para pruebas de combinación, donde prueba de tablas de decisión ayuda.
  • Imagina riesgos que no necesariamente se corresponden con una dimensión obvia.
  • Identificar y enumerar las variables no analizadas. Recopilar información para su posterior análisis.
  • Resuma su análisis con una tabla de riesgo/equivalencia.

Preguntas Frecuentes

Ambas etiquetas aparecen en la práctica. Las clases derivadas de la especificación lo hacen una cuadro negro técnica; las clases derivadas del código lo convierten en una caja blanca. El análisis en sí es idéntico.

Cubre los aspectos más propensos a errores con muy pocos casos de prueba. Sus limitaciones son reales: los límites son difíciles de definir con precisión y nunca se ponen a prueba flujos de trabajo completos, por lo que complementa otros métodos en lugar de reemplazarlos.

La partición de equivalencia es un paso dentro de las pruebas de dominio, que también ordenan variables, agregan análisis de límites, manejan dimensiones secundarias y variables de salida, y finalizan en una tabla de riesgos.

Los dos se superponen sin ser idénticos. Este artículo cubre el análisis del dominio de entrada, mientras que el uso industrial como pruebas en el ámbito de la atención médica Esto implica realizar pruebas con conocimiento del sector, lo cual sigue siendo necesario para evaluar los resultados esperados.

Los asistentes de IA leen un requisito y proponen clases de equivalencia candidatas, valores de los límites y casos inválidos faltantes. Un evaluador aún confirma los límites reales, ya que un rango inferido erróneamente produce un conjunto de prueba fiable pero inútil.

Copiloto de GitHub Escribe métodos de prueba parametrizados una vez que las clases y las aristas aparecen en la solicitud o en el código. El evaluador debe proporcionar los límites comerciales no especificados.

Cada combinación crece multiplicativamente, por lo que rara vez es práctico. Analice primero cada variable por separado y luego utilice pares o matriz ortogonal selección para las combinaciones arriesgadas.

Probar solo clases válidas y omitirping prueba negativa, utilizando un límite inclusivo donde la regla es exclusiva, e ignorando por completo las variables de salida.

Resumir este post con: