Salut la communauté Discourse ! ![]()
J’ai travaillé sur une technologie (Colimit) qui aide les gens à appliquer le test basé sur modèle pour tester leur frontend web/navigateur/DOM, leur backend API, ou même leurs modèles ORM ou modèles de vue. Si vous n’êtes pas familier avec l’idée, vous définissez essentiellement une spécification de haut niveau de ce que votre application est censée faire en termes d’actions possibles, et à partir de là, vous obtenez des centaines ou des milliers de séquences d’actions utilisateur valides (c’est-à-dire des flux utilisateur) qui peuvent explorer intelligemment un grand espace d’états possibles et découvrir des bugs difficiles à atteindre par rapport aux cas de test écrits à la main.
Je sors de la phase d’utilisation de Colimit sur de petits exemples et j’ai pensé que Discourse pourrait être un excellent candidat pour l’essayer ensuite, car c’est à la fois une application sophistiquée qui est utilisée en production mais qui est aussi entièrement open source, ce qui facilite les expérimentations. L’avantage est que Colimit est écrit de manière abstraite, vous pouvez donc réutiliser la même spécification/modèle (en écrivant des adaptateurs) pour effectuer différents types de tests, comme par exemple les tests de l’API Discourse via le gem, les tests d’intégration utilisant Capybara, les tests de fumée utilisant Puppeteer, etc.
Avant de commencer, je me demandais si quelqu’un de la communauté Discourse pouvait penser à des domaines de l’application qui sont actuellement des sources majeures de bugs ou qui ont moins de couverture et sur lesquels il serait plus précieux de concentrer du temps ?
Aussi, juste par curiosité, j’apprécierais toute réponse de personnes qui pensent que cela semble intéressant et qui voient une valeur potentielle pour tester le projet Discourse, ou si l’opinion est que l’état actuel des tests est déjà suffisant (auquel cas il y a toujours au moins une valeur de maintenance potentielle à pouvoir remplacer les tests écrits manuellement par ceux qui pourraient être générés automatiquement à partir d’un modèle).
Merci !