La cobertura del código del es una medida usada en la prueba del software. Describe el grado a el cual el código fuente de un programa se ha probado. Es una forma de prueba que las miradas en el código directo y como tal vienen bajo título de la prueba de caja blanca . Actual, el uso de la cobertura del código se amplía al campo del hardware digital, el methododology contemporáneo del diseño cuyo confía en los idiomas descriptivos de hardware (HDL).

Las técnicas de la cobertura del código estaban entre las primeras técnicas inventadas para la prueba sistemática del software. La primera referencia publicada estaba por Miller y Maloney en las comunicaciones del ACM en 1963.

Criterios de la cobertura

Para medir como de bien el programa es ejercitado por una habitación de prueba, uno o más criterios de la cobertura del se utilizan. Hay un número de criterios de la cobertura, los principales que son:
¿La cobertura de la función del - se ha ejecutado cada función en el programa?
¿La cobertura de la declaración del - cada línea del código fuente se ha ejecutado?
¿La cobertura de la condición del - se ha ejecutado cada punto de la evaluación (tal como una decisión verdadera/falsa)?
¿La cobertura de la trayectoria del - cada ruta posible a través de una parte dada del código se ha ejecutado?
¿La cobertura de la entrada/de la salida del - cada llamada y vuelta posibles de la función se ha ejecutado?

los usos Seguridad-críticos se requieren a menudo para demostrar que la prueba alcance 100% de una cierta forma de cobertura del código.

Algunos de los criterios de la cobertura antedichos están conectados. Por ejemplo, la cobertura de la trayectoria implica la condición, la declaración y la entrada/la cobertura de la salida. La cobertura de la declaración hace el no implica cobertura de la condición, como el código (en el lenguaje de programación C) debajo de demostraciones: lang=" del foo vacío (barra de la internacional) { printf (" Éste es "); si (<= 0 de la barra) { printf (" no "); } printf (" un número entero positivo. \ n"); vuelta; }

Si la función foo fue llamada con bar variable fijado al − 1, cobertura de la declaración sería alcanzado. La cobertura de la condición, sin embargo, no.

La cobertura de la trayectoria llena, del tipo descrito arriba, es generalmente impráctica o imposible. Cualquier módulo con una sucesión de las decisiones de n en él puede tener hasta las trayectorias de 2^n dentro de él; las construcciones de lazo pueden dar lugar a un número infinito de trayectorias. Muchas trayectorias pueden también ser infeasible, en que no hay entrada al programa bajo prueba que pueda causar que trayectoria particular que se ejecutará. Sin embargo, un algoritmo de fines generales para identificar las trayectorias infeasible se ha demostrado ser imposible (tal algoritmo se podría utilizar para solucionar el problema que paraba ). Las técnicas para la prueba práctica de la cobertura de la trayectoria en lugar de otro intentan identificar clases de trayectorias del código que diferencien solamente en el número de ejecuciones del lazo, y alcanzar el " path" de la base; la cobertura el probador debe cubrir todas las clases de la trayectoria.

Cifrar la cobertura en la práctica

El código fuente se equipa generalmente y funcionamiento con una serie de pruebas. La salida resultante entonces se analiza para considerar qué áreas del código no se han ejercitado, y las pruebas se ponen al día para incluir estas áreas cuanto sea necesario. Combinado con otros métodos de la cobertura del código la puntería es desarrollar un sistema riguroso con todo manejable de pruebas de la regresión.

La cobertura del código se expresa en última instancia como porcentaje, como en " Hemos probado el 67% del code." El significado de esto depende de qué formas de cobertura del código se han utilizado, pues la cobertura de la trayectoria del 67% es más comprensiva de cobertura de la declaración del 67%.

El valor de la cobertura del código como medida de calidad de la prueba se discute (véase los acoplamientos externos).

Ver también

Prueba de la mutación
Software métrico
Prueba de regresión
Análisis estático del código
Prueba de caja blanca
Panopticode - un proyecto de la fuente abierta que proporciona la visualización de Treemap de la cobertura del código en Java proyecta

.

  • Zenithic
  • skip Ltd.
    Random links:Flujo de liquidez descontado | Parque nacional de Bladensburg | Kahless | Barq | Cleveland Williams

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">