Y at-il un bon moyen de le faire? J'écris une extension qui interagit avec un site Web en tant que script de contenu et enregistre les données à l'aide de localstorage. Existe-t-il des outils, des frameworks, etc. que je peux utiliser pour tester ce comportement? Je me rends compte qu'il existe des outils génériques pour tester le javascript, mais sont-ils suffisamment puissants pour tester une extension? Le test unitaire est le plus important, mais je suis également intéressé par d'autres types de tests (tels que les tests d'intégration).
Réponses
Trop de publicités?Oui, les cadres actuels sont assez utiles..
Dans le passé récent, j'ai placé tous mes tests sur un "test" de la page qui a été intégré dans l'application, mais pas accessible à moins physiquement tapé.
Par exemple, j'aurais tous les tests d'une page accessible en vertu de chrome-extension://asdasdasdasdad/unittests.html
Les tests auraient accès à localStorage etc. Pour accéder au contenu des scripts, en théorie, vous pourriez test via embedded IFRAMEs votre page de test, cependant, ce sont plus de l'intégration au niveau des tests, des tests unitaires, il faudrait vous abstraites que l'écart de vraies pages de sorte que vous ne dépend pas d'eux, de même pour l'accès à localStorage.
Si vous voulez tester directement les pages, vous pouvez orchestrer votre extension pour ouvrir de nouveaux onglets (google chrome.onglet.créer({"url" : "someurl"}). Pour chacun des nouveaux onglets de votre contenu script doit s'exécuter et vous pouvez utiliser votre framework de test pour vérifier que votre code a fait ce qu'il doit faire.
Comme pour les cadres, JsUnit ou la plus récente de Jasmin devrait fonctionner correctement.
Sujet déjà existant outil dans google Chrome:
-
Dans le chrome outil de développement, il y a la section des Ressources Pour le stockage local.
Outils De Développement > Ressources > Stockage Local
Voir les changements de localstorage.
Vous pouvez utiliser la console.profil de performance de test et de regarder moment de l'exécution de la pile des appels.
- pour le système de fichiers, Vous pouvez utiliser cette URL pour vérifier votre fichier est télécharger-ed ou pas: système de fichiers:chrome-extension://// temporaire
Si vous utilisez le contenu de script et le stockage local sans page d'arrière-plan/script et sans message en passant, local de stockage sera accessible à partir de ce site uniquement. Donc, pour tester ces pages, vous devez vous injecter votre script de test dans ces onglets.