Page 2 sur 2

Re: Des tests de non régression pour les exercices

Publié : 07 janv. 2015, 12:04
par spalax
Jérôme a écrit :
spalax a écrit :C'est normal : les autres exercices n'ont pas d'attribut *description*. Ils ne sont donc pas inclus dans pyromaths (l'interface graphique ne les affiche pas), et ne sont pas non plus pris en compte par l'outil de test.
Je me suis mal exprimé. Je voulais dire qu'il ne me créait pas les tests des niveaux 6e, 5e, 4e, ... Seulement les deux exercices de 1reS.
Pour le moment, ça ne fonctionne qu'avec les nouveaux exercices (ceux de type TexExercise), mais pas avec l'ancien format. Si ça se trouve, ça n'est pas très compliqué d'inclure ça. À voir.

Re: Des tests de non régression pour les exercices

Publié : 07 janv. 2015, 16:30
par Jérôme
spalax a écrit :Pour le moment, ça ne fonctionne qu'avec les nouveaux exercices (ceux de type TexExercise), mais pas avec l'ancien format.
OK. Si c'était possible d'intégrer l'ancien format, ce serait un plus indéniable.

Re: Des tests de non régression pour les exercices

Publié : 14 janv. 2015, 12:55
par spalax
Bonjour,
en ce qui concerne les tests pour l'ancien format d'exercices, je n'y ai pas touché. Pour ton bug (le test d'un exercice tout juste créé ne fonctionnait pas), deux problèmes :
  • Un problème d'unicode que j'ai corrigé et pushé.
  • Un problème d'aléatoire : dans le fichier SecondDegre.py, à la ligne 234, un appel est fait à une fonction aléatoire. J'avais dans la tête (mais j'ai surinterprété ça) qu'aucun appel aux fonctions aléatoires ne se faisait dans les méthodes tex_statement et tex_answer. Donc soit on confirme ma pensée, et on interdit cela, soit on l'autorise, et il faut revoir le code (je pense qu'interdire le hasard dans tex_statement et tex_answer est de loin le plus simple).
Autre problème rencontré : Dans l'interface graphique, l'aperçu affiché pour l'exercice "Sd. 1 - Forme canonique" n'est pas bon : c'est une illustration en rapport avec des vecteurs. Du coup, j'ai une question : y a-t-il une raison pour laquelle les exercices sont numérotés de manière « implicite » (ou alors je n'ai pas vu où c'était explicité) ? Je trouve que cela obscurcit le code. Ce à quoi j'aurais pensé est :
  • un attribut de chaque exercice sous la forme "lycee/mon_illustration.png" qui indique le chemin de l'illustration, relative à un dossier de données (ou plus simplement "mon_illustration.png", si on suppose que l'arborescence du répertoire de données est le même que le répertoire des exercices).
  • chaque illustration est nommée fichier.exercice.png : par exemple, l'illustration de l'exercice "Sd1FormeCanonique" du module "SecondDegre" se trouve dans le fichier "SecondDegre.Sd1FormeCanonique.png".
Qu'en pensez-vous ?

-- Louis

Re: Des tests de non régression pour les exercices

Publié : 14 janv. 2015, 16:51
par Jérôme
Bonjour,
spalax a écrit :Donc soit on confirme ma pensée, et on interdit cela, soit on l'autorise, et il faut revoir le code (je pense qu'interdire le hasard dans tex_statement et tex_answer est de loin le plus simple).
En effet, il me semblerait plus logique, dans l'esprit de tex_statement et tex_answer, que tout ce qui est aléatoire se fasse avant, dans le init, ces deux fonctions ayant pour unique but de mettre en forme ce qui a été initié. Je corrigerai cela très prochainement.
spalax a écrit :Dans l'interface graphique, l'aperçu affiché pour l'exercice "Sd. 1 - Forme canonique" n'est pas bon
C'est normal, je n'ai pas encore créé les vignettes des nouveaux exercices. Il manque donc quelques vignettes. Cela sera fait juste avant publication.
spalax a écrit :Je trouve que cela obscurcit le code. Ce à quoi j'aurais pensé est :

un attribut de chaque exercice sous la forme "lycee/mon_illustration.png" qui indique le chemin de l'illustration, relative à un dossier de données (ou plus simplement "mon_illustration.png", si on suppose que l'arborescence du répertoire de données est le même que le répertoire des exercices).
chaque illustration est nommée fichier.exercice.png : par exemple, l'illustration de l'exercice "Sd1FormeCanonique" du module "SecondDegre" se trouve dans le fichier "SecondDegre.Sd1FormeCanonique.png".
Dans l'absolu, c'est une bonne idée. Maintenant, c'est plus difficile à coder. Si tu as du temps pour modifier cela, pas de soucis, bien au contraire. Ce serait plus lisible. En ce qui me concerne, j'ai plus envie de passer le trop peu de temps que j'ai à créer des exercices. j'ai des tas d'idée pour le lycée :)

Bonne journée.

Re: Des tests de non régression pour les exercices

Publié : 17 janv. 2015, 20:01
par spalax
Les vieux exercices sont maintenant aussi testés. J'en ai ajouté quelques un pour vérifier que ça fonctionnait. C'est dans la branche *unittest*, et je l'y laisse là pour le moment : j'ai modifié des noms de classe. J'ai fait attention, mais il y a quand même un risque que j'ai cassé des choses, notamment pour la version web que je n'ai pas testé.

Pour les vignettes, je marque ça à ma todo liste non urgente. Moi aussi, j'ai des tas d'exercices en tête pour mes lycéens, mais j'avoue que je n'ai pas encore vraiment eu le courage de mettre vraiment le nez dans ce code là…