Introduction aux tests unitaires dans WordPress – javascript avec quanit
Êtes – vous toujours intéressé par les tests unitaires dans WordPress? Bien, parce qu’aujourd’hui nous allons passer de PHP à JavaScript et donc à l’avant! Pas mal, hein? Dans cet article, je vais vous montrer quelques cadres pour tester le code JavaScript à l’unit é, et nous allons voir un exemple étape par étape. Maintenant que vous êtes (presque) un testeur d’Unit é expérimenté? Je vais partager quelques vidéos YouTube que j’aime qui vous apprendront plus sur ce sujet. Mais avant de plonger dans le monde JavaScript… Dans mon dernier post, je t’ai donné des devoirs, tu te souviens? Voici ce que je t’ai demandé de faire:
Outrepasser la fonction neliovat _ get VAT de sorte que le montant représenté par une chaîne de 15, 20, 1000 ou 3 € (séparateur de milliers optionnel, séparateur décimal, peut avoir un symbole de devise et aucun espace) passe le test. La fonction originale que j’ai introduite était: le test qui a échoué était: Alors, comment pouvons – nous résoudre ce problème? L’idée est simple: vous avez une chaîne de caractères qui contient des caractères \
Les résultats d’un autre essai sont les suivants:
Peut être exécuté sur deux noeuds. JS, créé comme une suite de test simple, extensible et rapide. Il est utilisé pour les tests d’Unit é et l’intégration et est un excellent candidat pour le développement axé sur le comportement (BDD). Mocha est un excellent cadre de test JavaScript Jasmine une autre image populaire est Jasmine. Comme indiqué sur leur site Web, il s’agit d’un cadre de développement basé sur le comportement pour tester le code JavaScript. Jasmine n’a pas besoin de Dom, pas de dépendances, syntaxe claire. Il est également bien documenté afin que vous puissiez rapidement voir comment l’utiliser. Jasmine est un autre cadre de test JavaScript populaire. Si vous voulez savoir lequel est le meilleur, il y a beaucoup de blogs qui les comparent (et d’autres). Cependant, si vous voulez mon avis, vous devriez essayer toutes les façons de vous rendre plus heureux. Cependant, vous voudrez peut – être aussi voir qunit.
Qunit qunit est le dernier cadre de test JavaScript dont je voudrais parler aujourd’hui. Son but est de tester jquery (vous le connaissez bien, n’est – ce pas?) Il est avec nous depuis un moment. Pour autant que je sache, qunit semble avoir perdu une partie de son élan, mais il vaut la peine d’en parler, car qunit est le cadre utilisé dans wordpress pour tester les composants JavaScript. Qunit est un autre cadre de test JavaScript. Il est spécial parce que (A) Il a été conçu pour tester jquery et (b) Il est actuellement utilisé dans le noyau WordPress. Configurer notre premier test qunit suppose que vous écrivez notre fonction nelio _ get VAT préférée dans un fichier javascript appelé fonctions. Js:
Comme vous pouvez le voir, il n’y a pas de luxe: C’est exactement la fonction que nous voyons en PHP, mais elle est écrite en javascript. Cette fonction se comporte donc (probablement) de la même manière que la fonction correspondante de PHP: elle calculera la TVA de 21% sur un certain montant, quel que soit son format. Cette fonction prend deux nombres C
Les chaînes et les chaînes peuvent… Vous connaissez déjà nos fonctions, n’est – ce pas? Nous voulons que le test que cette fonction a réussi soit écrit dans un fichier appelé tests comme indiqué ci – dessous. Js: J’ai légèrement modifié certains tests spécifiques, mais je suis sûr que vous comprenez ce qui se passe. Pour vérifier que nos fonctions réussissent ces tests, nous devons créer un petit document HTML contenant toutes les exigences: la Bibliothèque qunit, les fonctions JavaScript que nous testons, et le test lui – même:
Si vous ouvrez ce document dans un navigateur web maintenant, nous obtiendrons ce qui suit: Yeah! Notre test qonit a été couronné de succès. Mec, j’aime le vert? Cela signifie que tous nos tests ont été couronnés de succès! Quelques conseils et astuces pour devenir un meilleur programmeur et testeur comme vous pouvez le voir, il n’y a pas de magie derrière les tests unitaires, bien sûr, il y a beaucoup de choses que nous n’avons pas encore discutées (par exemple, comment configurer l’environnement avec les données existantes), mais il s’agit d’utiliser correctement le cadre de test et ses fonctionnalités. En fait, peu importe la langue que vous testez: il est important de croire que le test est un concept et de le tester aussi efficacement que possible. Comme d’habitude, la partie la plus difficile est de commencer et de suivre l’initiative. Comme « ai – je testé le bon composant? » \
Rip (mais, comme je l’ai déjà dit, ses idées s’appliquent à toutes les langues et à tous les cadres de test). Je vous encourage vraiment à passer une heure à regarder la vidéo: vous apprendre à améliorer vos compétences de test d’une manière simple et efficace.
À mon avis, la partie la plus intéressante de son exposé est la suivante: un bon test d’Unit é comporte trois attributs de base (voir la vidéo) et il est fiable. Si le test vous dit que tout va bien, mais que vous ne lui faites pas confiance, nous vous recommandons de revérifier votre code pour vous assurer qu’il va bien. Ou, s’il vous dit ce qui ne va pas et que vous n’y croyez pas, vous pourriez vous dire, \
Ce qu’un test fait est appelé correct. Pour ce faire, assurez – vous que les trois aspects suivants sont parfaitement indiqués: unités de travail: ce que nous testons. Ça pourrait être une classe, une fonction, un module… Tout ira bien, mais assurez – vous de le marquer clairement. Scénario: quand et comment effectuer le test, quel est le contexte? Certaines fonctions se comportent exactement de la même façon, d’autres dépendent du type d’attribut et d’autres dépendent de l’état de la base de données. Par exemple, enregistrer un message qui n’existe pas se comporte différemment que d’enregistrer un message qui existe déjà, donc c’est un scénario: Allons – nous enregistrer une nouvelle instance ou écraser une instance existante? Comportement prédictif: Qu’est – ce qui devrait (ou ne devrait pas) se passer avec les résultats des tests? La partie la plus importante ici est d’expliquer comment les verbes doivent et ne doivent pas être utilisés. Par exemple, le test suivant est très clair: « compte tenu de la fonction WP _ post Save (Unit é de travail), lorsque nous sauvegardons un message existant (scénario), l’ID du message doit être le même qu’avant (comportement attendu). D’autre part, si le comportement attendu est «… L’ID du poste est le même qu’avant l’enregistrement », il n’est pas clair si nous avons signalé un problème (l’ID du poste est le même et ne devrait pas être signalé) ou si nous avons expliqué nos attentes. La deuxième vidéo est très utile pour les débutants. Je me souviens quand j’ai commencé à tester mon code, l’une de mes plus grandes difficultés était qu’il ne pouvait pas être testé: mon code n’était pas si compliqué, mais je ne savais pas comment le tester!
C’est la lumière que Rebecca m’a montrée! À 4h43, Rebecca a montré une petite application JavaScript et son code source: Ce n’est pas très élégant, mais ce n’est pas un désordre. Ou alors? C’est le type de code que j’ai écrit (je dois admettre que parfois je le fais encore), mais ce code ne peut pas