El contexto como clave para reutilizar pruebas en bibliotecas de testing

Fuentes: Context Makes Tests Reusable

Este ensayo técnico recoge la experiencia de un año diseñando una biblioteca de pruebas y expone cómo un cambio aparentemente menor en la API —incorporar contexto a las pruebas— resuelve problemas clásicos del testing: la instalación y el desmontaje de entornos, y la reutilización de tests. Tras docenas de iteraciones, el autor describe una sintaxis limpia basada en tres entidades: aserción, test y suite, donde el test se trata como una entidad de primera clase que el test-runner puede ejecutar y reejecutar, lo que resulta especialmente útil en flujos REPL. Las suites aportan agrupación, jerarquía y herencia de metadatos, de modo que las pruebas hijas heredan las anotaciones de las suites祖先, como etiquetas o fixtures. El artículo repasa también los parámetros de ámbito dinámico, un mecanismo que permite modificar valores visibles para las funciones llamadas sin propagar argumentos explícitos, y lo distingue del ámbito léxico. Con estos mimbres, el autor identifica la limitación central de su diseño original: solo el test-runner tenía acceso al contexto, por lo que las pruebas ignoraban su entorno y resultaba difícil compartir fixtures como la apertura de una conexión a base de datos. La propuesta consiste en hacer que el contexto sea accesible desde el propio test, de modo que un mismo test pueda reutilizarse con distintos contextos de ejecución. El texto cierra anticipando cómo esta decisión simplifica fixtures, reduce duplicación y mejora la experiencia de desarrollo, aunque el fragmento se interrumpe antes de presentar la solución completa.