Les exercices de programmations dits "Simple" permettent de donner des exercices à des étudiants dans un environnement simplifié. Ces derniers n'éditent qu'un fichier. Ces exercices sont plus simples à créer que des exercices multi-fichiers.
Les exercices simples sont vérifiés grâce à des tests unitaires. L'avantage d'un test unitaire est de fournir un contrôle plus fin qu'un test entrée/sortie.
Il existe trois manière d'écrire ces tests unitaires :
La classe AnswerTester fournit des méthode pour écrire des assertions et tester les codes des étudiants.
Elle possède les méthodes suivantes :
La méthode add_assert permet de tester une assertion
arbitraire. L'expression passée doit simplement évaluer
à True ou False.
La seconde option avec la fonction lambda permet d'éviter une erreur
si la variable testée n'a pas été crée par l'étudiant
la fonction compare_variable permet de vérifier qu'une variable a une valeur donnée.
Cette assertion permet de vérifier qu'une fonction spécifique a été utilisé par l'étudiant avec des paramètres spécifiques. Utile pour tester l'usage de fonction tierces qui n'ont pas de retour (model.fit, plt.plot ,etc.)
Le code suivant vérifier que l'étudiant a bien appelé la fonction print avec un argument valant 2