Ejemplos de técnicas de testing que se distinguen en lo qué será probado [KANER02]
Prueba cada función, una a una. Las funciones se prueban minuciosamente de forma de poder tener confianza que la función está bien. Puede ser Testing funcional de caja blanca o caja negra.
Probar varias funciones juntas, para ver cómo trabajan en cojunto.
Recorrer todos los menús y diálogos en un producto GUI, tomando todas las opciones disponibles
Un dominio es un conjunto que incluye todos los valores posibles de una
variable para una función.
En el testing de dominio se identifican las funciones y las variables.
Para cada variable, se particiona su conjunto de posibles valores en
clases de equivalencia y se toma un pequeño número representativo de cada
clase.
El método se basa en que si se prueban unos pocos representantes de una
clase, se deben encontrar la mayoría de los bugs que se encontrarían si se
prueban todos los miembros de la clase.
Ver: Partición de Equivalencia
Ver: Valor Límite
Las variables tienen relaciones en el programa. El testing lógico intenta chequear todas las relaciones lógicas en el programa. Ejemplo: Grafo causa efecto
EL programa pasa por distintos estados. En un estado dado, algunas entradas son válidas y otras son ignoradas o rechazadas. En el testing basado en estado, se recorre el programa a través de un conjunto de transiciones de estado y se verifican los resultados.
Un camino incluye todas las sentencias que el programa recorre para llegar a su estado actual.
pag 38 de kaner
El objetivo es verificar cada sentencia realizada sobre el producto en la especificación y que pueda ser verdadera o falsa. Incluye las sentencias en manuales de usuario, en documentos de marketing y en documentos técnicos enviados al cliente
El objetivo es probar que el programa satisface cada requerimiento en el documento de requerimientos
Probar dos o más variables en combinación cada una de las otras. En el programa interactuan muchas variables, si no se prueban las combinaciones se pierden errores que son provocados por combinaciones y no por valores individuales.