He elaborado una serie de ejercicios de Javascript que se autocorrigen con tests en Jasmine. Es una práctica que estoy probando este año y creo que no funciona mal. Se trata de explicar un poco de Javascript y tests y, a partir de ahí, hacer todos los ejercicios con tests.
Hay varias manera de enfocar esto y las estoy probando. La más evidente es proponer unos ejercicios y pedir luego que hagan los tests y que las funciones pasen los test. En realidad deberían utilizar la metodología TDD, pero no soy muy estricto en ese sentido. Otra manera de enfocar esto es proporcionar funciones acabadas, que las describan y escriban tests lo más precisos posible sobre estas. La última y más interesante es la de proponer enunciados y los tests. Los alumnos deben entender tanto el enunciado como el test y hacer la función que pasa el test. Se puede, además, ocultar parte de los tests para que hagan funciones más robustas.
Los ejercicios anteriores sirven para el tercer propósito. Además, entrenan a los alumnos para los exámenes, en los que también les paso los tests y los enunciados.