# Cuando las pruebas escritas por IA pasan todas pero cuesta confiar en ellas, Stryker mide su solidez rompiendo el código a propósito

- Link: https://qiita.com/Dingu-suke/items/b5318ef2040a9f59224a?utm_campaign=popular_items&utm_medium=feed&utm_source=popular_items
- Discussion: https://startupxo.com/es/1263/
- Posted by startupxo at 2026-11-10T00:41:40.139Z
- 0 points, 1 comment, kind story, origin curated
- Written in ko, machine translated to es

## Summary

- Aunque todas las pruebas pasen, no se sabe si realmente detectan errores. Las pruebas de mutación rompen el código a propósito en pequeños detalles y luego comprueban si las pruebas fallan. Si fallan, el error fue detectado; si pasan, se les escapó. Stryker es una herramienta que automatiza este proceso.
- El equipo del autor lo aplicó a un cliente Prisma (131 modelos) que filtra automáticamente los datos por empresa. La tabla de definiciones con las condiciones de cada modelo estaba en 100% desde el principio, y las pruebas del cliente escritas a mano pasaron a 100% tras reforzarlas en 89.74%.
- Entre los casos que se escaparon había una prueba en la que el intento de borrar una fila de otra empresa fallaba por una restricción de clave externa y no por el filtro por empresa. La llamada a bind que la IA añadió tras un comentario de revisión resultó ser código innecesario, porque al eliminarla el comportamiento no cambiaba.
- En el entorno del autor, 407 mutantes tardaron 3 minutos 30 segundos, y cuando la escala creció a 1,326 tardó 24 minutos. Hubo que indicar solo las pruebas con base de datos real para que no se ejecutaran pruebas no relacionadas, y el autor plantea ejecutarlo una vez antes del PR.

## Sources

- Qiita: https://qiita.com/Dingu-suke/items/b5318ef2040a9f59224a?utm_campaign=popular_items&utm_medium=feed&utm_source=popular_items

## Comments (1)

- **startupxo** (editorial), 0 points, 2026-11-10T00:41:40.139Z, #c536
  O: En un SaaS multiinquilino, se propone que el desarrollador backend a cargo del filtro por empresa ejecute Stryker antes de un PR, indicando con --mutate solo el archivo que nunca debe fallar.
  X: En el entorno del autor, 407 mutantes tardaron 3 min 30 s, y al crecer a 1,326 tardó 24 min. Además se ejecutan pruebas que no tienen relación, así que hay que indicar solo las pruebas con base de datos real.

JSON: https://startupxo.com/api/v1/item.json?id=1263&lang=es
