Pregunta

Soy relativamente nuevo en el mundo de la Prueba y WhiteBox necesidad ayude a diseñar un plan de pruebas para 1 de los proyectos que estoy trabajando actualmente. Por el momento sólo estoy explorando en busca de piezas comprobables de código y luego escribir algunas pruebas unitarias para eso. De alguna manera siento que es, con mucho, no la forma en que debe hacerse. Por favor, ¿me podría dar consejos sobre la mejor manera de prepararme para las pruebas de este proyecto? Herramientas o plantillas de plan de prueba que podría utilizar? El lenguaje utilizado es C ++ si se va a hacer la diferencia.

¿Fue útil?

Solución

Uno de los objetivos de las pruebas de caja blanca es cubrir el 100% (o lo más cerca posible) de las instrucciones de código. Sugiero la búsqueda de una herramienta de cobertura de código C ++ para que pueda ver qué código ejecutar sus pruebas y lo que el código no se ha contestado. Entonces diseñar pruebas para que el código tanto como sea posible se prueba.

Otra sugerencia es buscar en las condiciones de contorno en si statments, para los bucles, los bucles while, etc., y prueba de estos para cualquier 'zonas grises', falsos positivos y falsos negativos.

También podría diseñar pruebas para buscar en el ciclo de vida de las variables importantes. Probar su definición, su uso y su destrucción para asegurarse de que se están utilizando correctamente:)

Hay tres ideas para ayudarle a empezar. Buena suerte

Otros consejos

En el momento en que estoy solo de exploración en busca de piezas comprobables de código y luego escribir algunas pruebas unitarias para eso. De alguna manera siento que es, con mucho, no la forma en que se debe hacer.

La gente dice que uno de los principales beneficios de la ' desarrollo basado en pruebas ' es que le ecourages para diseñar sus componentes con capacidad de prueba en mente: que hace que sus componentes más comprobable

.

Mi enfoque personal (no-TDD) es el siguiente:

Mi prueba por lo tanto no es bastante 'caja blanca', excepto que la ingeniería inversa de la funcionalidad está probando. entonces la prueba de que la funcionalidad de ingeniería inversa, y evitar tener cualquier código inútil (y por lo tanto no probado). Podría (pero no a menudo) utilizar una herramienta de cobertura de código para ver cómo gran parte del código fuente se ejerce por las pruebas de recuadro negro.

Trate de "trabajar eficazmente con el código heredado": http://www.amazon. com / Trabajo-eficacia-Legacy-Michael-Plumas / dp / 0131177052

Es relevante ya que por 'legado' que significa código que no tiene pruebas. Es también un lugar buen libro.

herramientas relevantes son: http://code.google.com/p/googletest/ y http://code.google.com/p/gmock/ Puede haber otros frameworks de pruebas unitarias y simulacros, pero tengo familiaridad con estas y yo los recomiendo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top