criterios de cobertura
for( i = j ; i 25 then
E
printf(“Excelente. Su carro consume: “+miles/gallons) F else printf(“Muy mal. Su carro consume: “+miles/gallons+” y le cuesta: ”+gallons*price)
G fi
G end
Criterio AllDefs
Para cada variable v, T contiene los dcpath desde cada nodo de deifinicion de v hacia por lo
menos 1 nodo de uso de v
var miles:
A,B,D var gallons: A,B
var price:
A,B,D,E
Criterio All Uses
Para cada variable v, T contiene los dcpaths desde cada nodo definicion hasta todos los
Puses y Cuses.
Criterio All Cuses
Para cada variable v. T contiene los dcpaths que comienzan en cada definicion de v y
terminan en cada cuse de v.
var miles:
A, B, I, F
A, B, D, E
Criterio All Puses
var miles:
A, B, D
var gallons: A, B
A, B, D
Criterio All Cuses Some Puses
Para cada variable v, T contiene los dcpath desde cada definicion de v hasta cada cuse de
v.
**Si una definicion de v, no tiene cuses, entonces encontrar un dcpath hasta un puse
Criterio All Puse some Cuse
var miles:
A, B, D
var price:A, B, D, F (por excepcion, no es un Puse)
Alertas y combinaciones peligrosas
Combinaciones de 2 letras
*DD Inofensivo pero peligroso.
Definicion no usada?
*DK Probablemente bug
Mala practica de programacion
La defino y luego la mato
*KKInofensivos pero probable bug
Mato 2 veces la misma var
*KU Bug
Variable ya no puede ser usada
Buenas: DU, KD, UD, UK, UU
Combinaciones de una letra
K
Posible anomalia() no se hace nada antes o despues de la var
U
posible anomalia
D
Posible anomalia
U
No hay anomalia. pero hay mala practica
...
Regístrate para leer el documento completo.