Lorsque la première version du SharePoint Framework est sortie, elle incluait KarmaJSdans ses outils afin d’écrire des tests unitaires.
KaramJS a reçu beaucoup de commentaires sur ses performances, capacités, son support du JavaScript moderne… Et ceci particulièrement si vous l’utilisiez en combinaison avec PhantomJS, un navigateur web virtuel qui est abandonné depuis quelques années maintenant et qui était aussi fourni avec SPFx.
Alors que certaines personnes argumentaient pour un choix du Framework de tests unitaires au sein de SPFx, de manière similaire au fait que nous avons (presque) un choix sur le Framework web, nous n’avons pas vu beaucoup de progression sur le sujet ces dernières années.
Il y a quelques semainesMicrosoft a sorti la version 1.8.0 du SharePoint Framework, et c’est une très bonne version surtout sur un plan de la modernisation de l’outillage (flexibilité sur la version de typescript, dépréciation d’anciennes versions de Fabric…).
Cependant ils ont aussi supprimé le support de KamaJS de l’outillage standard et n’ont pas documenté ce changement, j’ai demandé que ce soit rectifié en interne.
Alors que vous pouvez très bien ramener karma en installant quelques paquets et en corrigeant la configuration de votre projet, je vous recommanderais de passer à Jest, non seulement cela demande peu d’effort, mais aussi les performances sont bien meilleures. Si vous voulez obtenir un aperçu de ce que le changement représente, vous pouvez jeter un œil à cette pull request, gardez à l’esprit qu’elle contient aussi la mise à jour vers 1.8.0.
Le générateur PnP inclut aussi une configuration Jest pour vos projets grâce à Elio Struyf et Andrew Connell et j’ai commencé à mettre à jour les outils, la documentation et les exemples existants pour l’intégration avec Azure DevOps.