{"action":"created","issue":{"url":"https://api.github.com/repos/openfisca/openfisca-france/issues/926","repository_url":"https://api.github.com/repos/openfisca/openfisca-france","labels_url":"https://api.github.com/repos/openfisca/openfisca-france/issues/926/labels{/name}","comments_url":"https://api.github.com/repos/openfisca/openfisca-france/issues/926/comments","events_url":"https://api.github.com/repos/openfisca/openfisca-france/issues/926/events","html_url":"https://github.com/openfisca/openfisca-france/issues/926","id":303845959,"node_id":"MDU6SXNzdWUzMDM4NDU5NTk=","number":926,"title":"Rendre les tests plus performants","user":{"login":"maukoquiroga","id":329236,"node_id":"MDQ6VXNlcjMyOTIzNg==","avatar_url":"https://avatars2.githubusercontent.com/u/329236?v=4","gravatar_id":"","url":"https://api.github.com/users/maukoquiroga","html_url":"https://github.com/maukoquiroga","followers_url":"https://api.github.com/users/maukoquiroga/followers","following_url":"https://api.github.com/users/maukoquiroga/following{/other_user}","gists_url":"https://api.github.com/users/maukoquiroga/gists{/gist_id}","starred_url":"https://api.github.com/users/maukoquiroga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maukoquiroga/subscriptions","organizations_url":"https://api.github.com/users/maukoquiroga/orgs","repos_url":"https://api.github.com/users/maukoquiroga/repos","events_url":"https://api.github.com/users/maukoquiroga/events{/privacy}","received_events_url":"https://api.github.com/users/maukoquiroga/received_events","type":"User","site_admin":false},"labels":[{"id":977393575,"node_id":"MDU6TGFiZWw5NzczOTM1NzU=","url":"https://api.github.com/repos/openfisca/openfisca-france/labels/flow:qualified-issues-fr","name":"flow:qualified-issues-fr","color":"b6db51","default":false},{"id":879940609,"node_id":"MDU6TGFiZWw4Nzk5NDA2MDk=","url":"https://api.github.com/repos/openfisca/openfisca-france/labels/kind:theme","name":"kind:theme","color":"5ef2cd","default":false},{"id":607868011,"node_id":"MDU6TGFiZWw2MDc4NjgwMTE=","url":"https://api.github.com/repos/openfisca/openfisca-france/labels/note:developer-experience","name":"note:developer-experience","color":"bfd4f2","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-03-09T13:46:16Z","updated_at":"2018-10-26T20:50:20Z","closed_at":"2018-10-26T20:50:20Z","author_association":"MEMBER","body":"![](https://github.trello.services/images/mini-trello-icon.png) [Improve performance for developers](https://trello.com/c/FRtsD02L/31-improve-performance-for-developers)\r\n\r\n**Pour**  les dévs\r\n\r\n**Story :**\r\n\r\nQuand je contribue à OpenFisca, \r\nJ'ai besoin que les tests soient plus rapides, \r\nPour pouvoir faire du _test-driven development_.\r\n\r\n**Definition of done :**\r\n\r\nDiminuer le temps du test suite de 20%. Cela inclut de possibles tests de performance ajoutés pour pouvoir l'en mesurer.\r\n\r\n_Example :_\r\n\r\n_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%._\r\n\r\n- [x] Faire du profiling (temps) pour avoir une idée des pistes - parent #1014\r\n\r\n**Pistes :**\r\n\r\n- [x] Utiliser ruaml.yaml ou PyYaml avec libyaml - parent #1016 (6,72%)\r\n- [x] ~Pas de vérifications sur entités/périodes en mode test~ - parent #1033 \r\n- [x] ~Do type checking at compile time~ - parent openfisca/openfisca-core#690\r\n- [ ] Regrouper les test YAML dans une seule `run` OpenFisca - parent openfisca/openfisca-core#616\r\n  - mette tout dans un seul fichier\r\n  - charcher une seule fois\r\n  - vectoriser les tests\r\n- [ ] Faster load/startup in debug/dev/test mode - parent https://github.com/openfisca/openfisca-core/issues/535\r\n\r\n**Autres pistes :**\r\n\r\n- Pre-fetch YAML et build simulations avant de lancer les tests\r\n- TaxBenefitSystem : memoiser les paramètres le temps d'un test suite run (pas reload paramètres)\r\n- TaxBenefitSystem : memoiser les variables le temps d'un test suite run (pas reload variables)\r\n- Séparer les tests entre unitaires python ; intégration python ; et intégration API JSON\r\n- Factoriser les tests similaires pour les lancer dans un seul scénario"},"comment":{"url":"https://api.github.com/repos/openfisca/openfisca-france/issues/comments/433539510","html_url":"https://github.com/openfisca/openfisca-france/issues/926#issuecomment-433539510","issue_url":"https://api.github.com/repos/openfisca/openfisca-france/issues/926","id":433539510,"node_id":"MDEyOklzc3VlQ29tbWVudDQzMzUzOTUxMA==","user":{"login":"Morendil","id":216452,"node_id":"MDQ6VXNlcjIxNjQ1Mg==","avatar_url":"https://avatars2.githubusercontent.com/u/216452?v=4","gravatar_id":"","url":"https://api.github.com/users/Morendil","html_url":"https://github.com/Morendil","followers_url":"https://api.github.com/users/Morendil/followers","following_url":"https://api.github.com/users/Morendil/following{/other_user}","gists_url":"https://api.github.com/users/Morendil/gists{/gist_id}","starred_url":"https://api.github.com/users/Morendil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Morendil/subscriptions","organizations_url":"https://api.github.com/users/Morendil/orgs","repos_url":"https://api.github.com/users/Morendil/repos","events_url":"https://api.github.com/users/Morendil/events{/privacy}","received_events_url":"https://api.github.com/users/Morendil/received_events","type":"User","site_admin":false},"created_at":"2018-10-26T20:50:20Z","updated_at":"2018-10-26T20:50:20Z","author_association":"CONTRIBUTOR","body":"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é."}}
{"actor":{"display_login":"Morendil"}}