Blanco Box Pruebas: qué son, técnicas, ejemplos y tipos

Blanco Box Pruebas

Blanco Box Pruebas es una técnica de prueba en la que se prueba la estructura interna, el diseño y la codificación del software para verificar el flujo de entrada-salida y mejorar el diseño, la usabilidad y la seguridad. En las pruebas de caja blanca, el código es visible para los evaluadores, por lo que también se denominan pruebas de caja clara, pruebas de caja abierta, pruebas de caja transparente, pruebas basadas en código y pruebas de caja de cristal.

Es una de las dos partes del Box Enfoque de prueba para las pruebas de software. Su contraparte, las pruebas de caja negra, implican pruebas desde una perspectiva externa o del usuario final. Por otro lado, las pruebas de caja blanca en ingeniería de software se basan en el funcionamiento interno de una aplicación y giran en torno a las pruebas internas.

El término “blancoBox" se utilizó debido al concepto de caja transparente. La caja transparente o blancaBox El nombre simboliza la capacidad de ver a través de la carcasa exterior (o "caja") del software y ver su funcionamiento interno. Del mismo modo, la "caja negra" en "Negro Box Pruebas "Simboliza no poder ver el funcionamiento interno del software, por lo que solo se puede probar la experiencia del usuario final.

Blanco Box Prueba de video

Haga clic en aquí si el video no es accesible

¿Qué verificas en blanco? Box ¿Pruebas?

La prueba de caja blanca implica probar el código de software para lo siguiente:

  • Agujeros de seguridad internos
  • Caminos rotos o mal estructurados en los procesos de codificación
  • El flujo de entradas específicas a través del código.
  • Rendimiento esperado
  • La funcionalidad de los bucles condicionales.
  • Prueba de cada declaración, objeto y función de forma individual.

Las pruebas se pueden realizar a nivel de sistema, integración y unidad de desarrollo de software. Uno de los objetivos básicos de las pruebas de caja blanca es verificar el flujo de trabajo de una aplicación. Implica probar una serie de entradas predefinidas frente a las salidas esperadas o deseadas, de modo que cuando una entrada específica no dé como resultado lo esperado, se habrá encontrado un error.

¿Cómo se interpreta el blanco? Box ¿Pruebas?

Lo hemos dividido en dos pasos básicos para darte una explicación simplificada de las pruebas de caja blanca. Esto es lo que hacen los evaluadores cuando prueban una aplicación utilizando la técnica de pruebas de caja blanca:

PASO 1) ENTENDER EL CÓDIGO FUENTE

Lo primero que suele hacer un tester es aprender y comprender el código fuente de la aplicación. Dado que las pruebas de caja blanca implican la prueba del funcionamiento interno de una aplicación, el tester debe tener un gran conocimiento de los lenguajes de programación utilizados en las aplicaciones que está probando. Además, la persona que realiza las pruebas debe ser muy consciente de las prácticas de codificación segura. La seguridad suele ser uno de los principales objetivos de las pruebas de software. El tester debe ser capaz de encontrar problemas de seguridad y evitar ataques de piratas informáticos y usuarios ingenuos que podrían inyectar código malicioso en la aplicación, ya sea consciente o inconscientemente.

PASO 2) CREAR CASOS DE PRUEBA Y EJECUTAR

El segundo paso básico para realizar pruebas de caja blanca implica probar el código fuente de la aplicación para comprobar que el flujo y la estructura sean adecuados. Una forma de hacerlo es escribir más código para probar el código fuente de la aplicación. El evaluador desarrollará pequeñas pruebas para cada proceso o serie de procesos de la aplicación. Este método requiere que el evaluador tenga un conocimiento profundo del código y, a menudo, lo realiza el desarrollador. Otros métodos incluyen Prueba Manualmente, pruebas de prueba y error y el uso de herramientas de prueba, como explicaremos más adelante en este artículo.

BlancoBox Pruebas

BlancoBox Ejemplo de prueba

Considere el siguiente fragmento de código

Printme (int a, int b) {                       ------------  Printme is a function 
    int result = a+ b; 
    If (result> 0)
    	Print ("Positive", result)
    Else
    	Print ("Negative", result)
    }                                        -----------   End of the source code

El gol de las blancasBox Las pruebas en ingeniería de software consisten en verificar todas las ramas de decisión, bucles y declaraciones en el código.

Para ejercitar las afirmaciones en el ejemplo de prueba de caja blanca anterior, WhiteBox Los casos de prueba serían

  • A = 1, B = 1
  • A = -1, B = -3

Blanco Box Técnicas de prueba

Una de las principales técnicas de prueba de caja blanca es el análisis de cobertura de código. El análisis de cobertura de código elimina las brechas en un Caso de prueba suite. Identifica áreas de un programa que no son ejercidas por un conjunto de casos de prueba. Una vez identificadas las lagunas, se crean casos de prueba para verificar partes del código no probadas, aumentando así la calidad del producto de software.

Hay herramientas automatizadas disponibles para realizar Análisis de cobertura de códigoA continuación se presentan algunas técnicas de análisis de cobertura que puede utilizar un evaluador de cajas:

Cobertura de estados de cuenta:- Esta técnica requiere que todas las declaraciones posibles en el código se prueben al menos una vez durante el proceso de prueba de Ingeniería de software.

Cobertura de Sucursales – Esta técnica comprueba todas las rutas posibles (if-else y otros bucles condicionales) de una aplicación de software.

Aparte de lo anterior, existen numerosos tipos de cobertura, como cobertura de condición, cobertura de condición múltiple, cobertura de ruta, cobertura de función, etc. Cada técnica tiene sus propios méritos e intenta probar (cubrir) todas las partes del código de software. Al utilizar la cobertura de extractos y sucursales, generalmente se obtiene una cobertura de código del 80 al 90 %, lo cual es suficiente.

A continuación se presentan algunos puntos importantes de White:Box Técnicas de prueba:

  • Cobertura de estados de cuenta
  • Cobertura de decisiones
  • Cobertura de sucursales
  • Cobertura de condición
  • Cobertura de múltiples condiciones
  • Cobertura de máquina de estados finitos
  • Cobertura de ruta
  • Pruebas de flujo de control
  • Pruebas de flujo de datos

tipos de blanco Box Pruebas

Prueba de caja blanca Abarca varios tipos de pruebas que se utilizan para evaluar la usabilidad de una aplicación, bloque de código o paquete de software específico. Se enumeran a continuación:

  • Examen de la unidad: Suele ser el primer tipo de prueba que se realiza en una aplicación. Examen de la unidad se realiza en cada unidad o bloque de código a medida que se desarrolla. Las pruebas unitarias las realiza esencialmente el programador. Como desarrollador de software, usted desarrolla algunas líneas de código, una sola función o un objeto y lo prueba para asegurarse de que funciona antes de continuar. Las pruebas unitarias ayudan a identificar la mayoría de los errores en las primeras etapas del ciclo de vida del desarrollo de software. Los errores identificados en esta etapa son más económicos y fáciles de solucionar.
  • Pruebas de pérdidas de memoria: Las pérdidas de memoria son las principales causas de que las aplicaciones se ejecuten más lentamente. Un especialista en control de calidad con experiencia en la detección de pérdidas de memoria es esencial en los casos en que la aplicación de software se ejecuta con lentitud.

Además de lo mencionado anteriormente, existen algunos tipos de pruebas que forman parte de las pruebas de caja negra y de caja blanca. Se enumeran a continuación.

  • Blanco Box Pruebas de penetración: En esta prueba, el evaluador/desarrollador tiene información completa del código fuente de la aplicación, información detallada de la red, direcciones IP involucradas y toda la información del servidor en el que se ejecuta la aplicación. El objetivo es atacar el código desde varios ángulos para exponer amenazas a la seguridad.
  • Blanco Box Prueba de mutación: Prueba de mutación se utiliza a menudo para descubrir las mejores técnicas de codificación que se pueden utilizar para ampliar una solución de software.

Blanco Box Herramientas de prueba

A continuación se muestra una lista de las principales herramientas de prueba de caja blanca.

Ventajas del blanco Box Pruebas

  • Optimización de código mediante la búsqueda de errores ocultos.
  • Los casos de prueba de caja blanca se pueden automatizar fácilmente.
  • Las pruebas son más exhaustivas ya que normalmente se cubren todas las rutas del código.
  • Las pruebas pueden comenzar temprano SDLC incluso si la GUI no está disponible.

Desventajas del blancoBox Pruebas

  • Las pruebas de caja blanca pueden ser bastante complejas y costosas.
  • Los desarrolladores que suelen ejecutar casos de prueba de caja blanca lo detestan. Las pruebas de caja blanca que realizan los desarrolladores no son detalladas y pueden dar lugar a errores de producción.
  • Las pruebas de caja blanca requieren recursos profesionales con un conocimiento detallado de programación e implementación.
  • Las pruebas de caja blanca consumen mucho tiempo; las aplicaciones de programación más grandes necesitan tiempo para probarse completamente.

Conclusión

  • Las pruebas de caja blanca pueden ser bastante complejas. La complejidad involucrada tiene mucho que ver con la aplicación que se está probando. Una aplicación pequeña que realiza una sola operación simple puede ser probada en caja blanca en unos pocos minutos, mientras que las aplicaciones de programación más grandes tardan días, semanas e incluso más tiempo en ser probadas por completo.
  • Las pruebas de caja blanca en las pruebas de software deben realizarse en una aplicación de software a medida que se desarrolla, después de escribirla y nuevamente después de cada modificación.