paso a paso · con la salida real
Nueve pasos hasta un proyecto verde. Al final son 60 líneas, y dos de las cosas que vas a ver son la herramienta corrigiéndote.
Todo lo que sigue es la salida textual de correr esto con 0.6.0.
Cero dependencias. Son dos versiones distintas a propósito: lo que una medida significa no envejece igual que cómo se escribe.
Desde este momento 34 medidas ya te obligan. Vienen del catálogo base y juzgan cómo escribís las tuyas: que declaren su umbral, de dónde salió el número, y qué no miran. No son 57 —ése es el catálogo entero— porque 20 sólo obligan a Oracle y no viajan a tu proyecto.
Es el orden que importa y el que cuesta respetar. Si la medida se escribe primero, el caso termina diciendo lo que la medida ya hace: no la prueba, la describe.
El defecto de este ejemplo es el problema del lazo cerrado en miniatura: una prueba que pasó sin afirmar nada. Pasa igual con la función borrada.
La medida que el caso reclama todavía no existe, y está bien: el caso describe el defecto, no la regla.
El donde selecciona lo que ofende, no lo que está
bien. Y el alcance es obligatorio: sin él, un verde se lee como «está todo bien»,
y ninguna medida ve todo.
La medida está bien: lo que falta es un caso verde. Sin él nadie comprobó que la medida sepa no dispararse — y una regla que siempre da rojo tampoco mide.
La tercera fila tiene cero aserciones y no ofende: falló, y eso ya se ve. Lo que la medida persigue es el par «pasó y no afirmó».
La mutación ya está en cero: los dos casos fijan la medida. Lo que falta es lo que el catálogo base exige de cualquiera — que al menos un caso venga de una corrida real, y que la cantidad que comparás tenga unidad declarada.
Comparar p.aserciones == 0 sin decir que se miden aserciones es
comparar un número con otro número. La relación también declara su punto ciego: el sensor
tampoco ve todo.
lo que este verde sí dice
Dice que hay una regla escrita, que un defecto real la pone en rojo, que un caso sano la deja en verde, y que los once mutantes de esa regla mueren contra esos dos casos: no se puede reescribir la medida de otra forma sin que el corpus lo note.
No dice que tus pruebas estén bien. La medida cuenta
aserciones; una aserción que siempre es verdadera cuenta igual que una que discrimina. Eso está
escrito en su alcance, y es lo primero que hay que leer de una medida que no
escribiste.
El siguiente paso real no es escribir más medidas: es conectar el sensor. Mientras la evidencia se escriba a mano, esto prueba que el catálogo es coherente — no que tu proyecto esté bien.