Bonjour,
Là où on pourrait grandement améliorer dolibarr, c’est sur les tests E2E, car une grande partie des tests doivent être faits manuellement. Faire des release régulière, et donc faire de l’utilisateur final le testeur, lui donne l’impression que la solution n’est pas stable.
J’ai découvert récemment Jdi-light qui permet de définir les éléments de la page dans un objet et ensuite dans les tests, il ne reste plus qu’à interagir avec les objets.
Dans les exemples, on peut voir la définition d’un formulaire puis la saisie du formulaire se fait simplement via un DTO (exemple).
L’écriture des tests est moins chronophage que du selenium classique.
C’est en java, mais ne demande pas un niveau de connaissance élevé de java.
De plus, la définition pourrait être un artefact java pour permettre aux développeurs de module de l’importer facilement et de faire des tests de leurs modules plus rapidement, car il aurait déjà toute la partie dolibarr défini.
En cas de changement dans l’UI, on modifie la définition de la page et si le comportement ne change pas, pas de changement du test nécessaire.
Personnellement, je pense qu’une LTS n’est pas nécessaire. En revanche, il faudrait réfléchir à une réelle mise en place de dépréciations sur au moins deux versions avec un warning qui indique sur quelle version ce comportement sera supprimé et pas juste un @deprecated sur une fonction et quand il y a un deprecated, mettre la version ou ça ne fonctionnera plus. Si on doit changer le comportement ou la signature d’une fonction, on en crée une nouvelle, on modifie l’ancienne pour qu’elle soit compatible avec l’ancienne.
Concernant les modifications de la base de données, on ne devrait pas changer d’une version à une autre, mais garder les deux dans le même principe des dépréciations et avoir un référentiel de changement d’une version à une autre (avec une colonne pour dire si c’est déprécié ou supprimé)
Comme le dit @hop, un ménage dans les issues GitHub ne ferait pas de mal.
Concernant les PR qui ont besoin d’être validés, on pourrait avoir des issues avec un tag du genre « PR to be tested » ainsi que sa version de sortie et la procédure de test, qui permettrait au non-développeurs de faire des retours. Derrière, le travail des développeurs est largement diminué.
Pour ça, il faudrait une instance de dolibarr mise à jour régulièrement, pour que les testeurs puissent facilement tester sans avoir de compétence particulière.