-
Notifications
You must be signed in to change notification settings - Fork 101
Rendre les tests plus performants #926
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@maukoquiroga Je ne comprends pas pourquoi cette issue est sur France, que peut-on faire au niveau de France ? Est-ce que je peux fermer en ouvrant au besoin une issue sur Core ? |
@Morendil Parce que :
Le problème sur core, tel que ci-décris, n'existe pas. |
Je dirais l'inverse:
En effet, j'estime informellement que le nombre de tests YAML sur France augmente de façon constante et très significative (comment l'objectiver est une question à part entière). Cette inflation du nombre de tests a déjà largement annulé les gains de performance de 20% qu'aurait apporté la résolution de cette issue selon sa Definition of Done. Or ces gains ne sont pas encore réalisés… Pour moi le problème est putôt "on a trop de tests et pas assez de questionnement sur le ROI de chaque test". Les solutions ne sont pas techniques, elles sont humaines: sensibiliser les contributeurs à cette question, et leur transmettre les compétences nécessaires à évaluer le ROI de chaque test. Je propose qu'on mette en pause ces travaux d'optimisation par la voie technique et qu'on lise ensemble en atelier un certain nombre de tests en posant la question de leur valeur, dans l'esprit d'un Gemba walk. |
Hello @Morendil, Sauf erreur de ma part,
et
sont équivalentes 😄
Même impression. Et je ne suis pas sûr que l'on teste de façon très réfléchie.
L'objectivation à mon avis va dépendre à chaque fois de ta story, du job-to-be-done de l'utilisateur concerné par le problème en question. Ici, il s'agit de pouvoir mieux faire du TDD, le 20% d'amélioration n'étant qu'une des formes possible de l'objectiver. Changer radicalement la façon comment on conçoit les tests sur OpenFisca-France doit être objectivé par rapport à son objectif identifié au préalable. Par exemple, si l'on envisage cette initiative comment venant à résoudre le problème ci-décrit, alors sont objectivation est celle ci-décrite.
Je suis convaincu comme toi que l'innovation de rupture viendra d'une meilleure qualité du testing et pas d'une sur-optimisation en C du code vectoriel.
Ils sont déjà en pause (il n'y a personne dans l'assignees).
Le définition of done n'est jamais technique, c'est plutôt un objectif d'impact du point de vue de l'utilisateur. On ne peut pas prescrire la solution en même temps que l'on définit le problème, ça va à l'encontre du principe d'autonomie :
En essayant de garder l'esprit du delivery, c'est-a-dire du consentement over consensus, il me semble que le nouveau format de RFC est parfait pour répondre à cette type d'issue, qui est très précise sur le problème et très vague sur l'implementation des possibles solutions (et cela intentionnellement). Si tu as un peu de slack je t'invite à t'assigner l'issue et à organiser l'atelier pour voir ce que cela donne, toujours en gardant la main sur l'objectif et le CTA 😃. Sinon attendons un peu à que quelqu'un d'autre fasse pareil, toujours à risque que sa solution ne soit pas la même que celle que tu envisages. |
Suite à nos discussions IRL, l'état de cette issue est le suivant: nous avons surtout l'intention d'intervenir sur le flux entrant de nouveaux tests. Nous serons par exemple plus exigeants sur le fait que chaque nouveau test justifie son existence en vérifiant quelque chose qui n'est pas déjà amplement testé par ailleurs. Ainsi il n'est pas utile de tester une modification ne consistant qu'en la revalorisation d'un paramètre législatif, à l'exclusion de toute évolution structurelle de la loi. Nous n'allons pas investir à court terme d'énergie et de temps sur le stock. Je garde en tête l'idée de l'atelier évoqué ci-dessus mais ce n'est pas une priorité. |
Uh oh!
There was an error while loading. Please reload this page.
Pour les dévs
Story :
Quand je contribue à OpenFisca,
J'ai besoin que les tests soient plus rapides,
Pour pouvoir faire du test-driven development.
Definition of done :
Diminuer le temps du test suite de 20%. Cela inclut de possibles tests de performance ajoutés pour pouvoir l'en mesurer.
Example :
Si l'on ajoute un test de performance qui augmente le temps du test suite de 10%, alors le gain de performance doit être de 30%.
Pistes :
Pas de vérifications sur entités/périodes en mode test- parent Pas de vérifications sur entités/périodes en mode test #1033Do type checking at compile time- parent Do type checking at compile time openfisca-core#690run
OpenFisca - parent Group YAML tests in a single OpenFisca run to speed up testing time openfisca-core#616Autres pistes :
The text was updated successfully, but these errors were encountered: