J'ai un projet node.js qui contient quelques spécifications Jasmine . Les spécifications se trouvent dans un sous-répertoire spec / et ont l'extension .spec.coffee, comme requis par jasmine-node .
Lorsque j'ouvre un de mes fichiers de spécifications dans l' IDE WebStorm , tous les appels à beforeEach
et describe
et it
sont affichés avec des soulignements ondulés bleus avec l'info-bulle: "Fonction ou méthode non résolue ()". Donc, même si j'utilise l' EAP 3.0 et qu'il est censé avoir une certaine prise en charge de Jasmine , cela ne prend pas automatiquement en compte le fait qu'il s'agit d'un fichier de spécifications Jasmine.
J'ai essayé d'aller dans Fichier> Paramètres> Bibliothèques JavaScript, et d'ajouter Jasmine en tant que bibliothèque (en spécifiant le chemin vers jasmine-2.0.0.rc1.js), puis en accédant à la sous-page Usage Scope et en vérifiant "Jasmine" dans le liste déroulante à côté de "Projet", mais cela n'a eu aucun effet - les méthodes Jasmine apparaissent toujours comme non résolues.
Comment puis-je dire à WebStorm que tous les fichiers d'un sous-répertoire spec et / ou tous les fichiers avec une extension .spec.coffee sont des tests Jasmine, et lui faire reconnaître les API Jasmine que ces tests utilisent?
Réponses:
Vous pouvez utiliser des stubs de bibliothèque JS prédéfinis dans Webstorm / PHPStorm / Idea
J'utilise cette configuration avec Jasmine 2.0
la source
Sur un Mac avec webstorm 2016.1.1, j'ai effectué les opérations suivantes:
la source
jasmine
bibliothèque en utilisant IntelliJ 2016.3 sur une machine Windows et cela a fonctionné, même sans redémarrer.Notez que si vous utilisez un outil de qualité de code tel que JSHint avec WebStorm, l'ajout de la bibliothèque globale jasmin / karma-jasmine n'a pas éliminé les erreurs JSHint.
Vous devez accéder aux paramètres JSHint via le système de menus de WebStorm (Lang & Frameworks> JavaScript> Outils de qualité de code> JSHint) et cliquer sur la case à cocher pour lui permettre de savoir dans quel environnement il s'exécute.
la source
Utilisation de TypeScript (et Angular2), il vous suffit d'activer le compilateur TypeScript dans les paramètres WebStorm ...
Paramètres> Langues et paramètres> TypeScript ...
Sous l'en-tête du compilateur, cochez ...
Activer le compilateur TypeScript ...
(J'ai également cliqué sur l'utilisation de la radio tsconfig.json)
Les méthodes Jasmine seront désormais reconnues
la source
WebStorm
compiler monTypeScript
depuis que j'utiliseWebpack
.new project
comme unAngular CLI
projet puis les reconnaît. Je ne sais pas ce qui est différent.Cela peut également être dû à une dépendance manquante (si vous développez en TypeScript).
Assurez-vous que vous avez installé
@types/jasmine
la source
Si vous rencontrez ce problème après avoir généré un projet à l'aide de,
Angular CLI
accédez àFile -> Settings -> Languages & Frameworks -> JavaScript -> Libraries
et vérifiez{your-project-name}/node_modules
.la source