Karma pas en cours d'exécution des tests unitaires en raison de “Non capturé navigateur” message
Je suis en train de configurer Karma pour exécuter AngularJS tests unitaires à l'aide de Jasmin, mais je ne peux pas obtenir les tests à exécuter. Je suis sûr que j'donnant sur quelque chose de simple. Je suis en cours d'exécution sur une machine Windows 7 avec Node.js
installé et karma installé via npm
.
Mon répertoire de la structure ressemble à ceci:
- js/app/- contient des contrôleurs, app, etc
- js/config/- contient karma.conf.js
- js/lib/- contient angulaire
- js/test/- contient jasmin spécifications
Je suis à partir d'une invite de commande dans le js
répertoire et de l'exécution de cette commande:
karma start config/karma.conf.js
Qui provoque Chrome pour exécuter sur le port 9876, mais à chaque fois que je change tout regardé fichiers et vérifier le Karma de sortie, je vois ce message d'information:
No captured browser, open http://localhost:9876/
Voici mon fichier de config:
module.exports = function(config) {
config.set({
basePath: '../',
frameworks: ['jasmine'],
files: [
'lib/angular.js',
'app/**/*.js',
'test/**/*.js'
],
exclude: [
],
reporters: ['progress'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
captureTimeout: 60000,
singleRun: false
});
};
Je suis en utilisant Angulaire 1.2.10 et Karma 0.10.9
- Il semble qu'il y ait quelques problèmes avec le Karma sur Windows : avez-vous essayer les solutions suggérées ici : github.com/karma-runner/karma/issues/635 ? Il pourrait être lié à la voie de chrome binaire (Karma ne connais que le chemin d'accès par défaut), il pourrait être votre pare-feu (essayez de le désactiver pour un temps), vous devriez également regarder votre fichier host.
- Merci @glepetre mais aucune de ces suggestions ont travaillé malheureusement. Mon fichier hosts est propre (nouvelle installation de Windows) et en désactivant le pare-feu n'a pas aidé. Je peux obtenir le navigateur à charger (essayé Firefox, Chrome et IE), mais il dit seulement
Karma - starting
et puis n'est-ce pas montrer toute autre sortie dans le navigateur. - Je confirme, même problème qui se passe sur Mac. Je ne comprends pas pourquoi un navigateur doit être ouvert pour un test unitaire qui n'est pas nécessairement liée à une interface utilisateur.
- Je pense qu'ils sont ouverts parce que le framework de test permet l'utilisation directe du moteur d'exécution javascript dans le navigateur. Frustrant qu'il ne semble pas fonctionner, et personne n'a une réponse si
Vous devez vous connecter pour publier un commentaire.
Je viens d'avoir le même problème dans un autre programme d'installation (Linux, QUnit, Firefox), si. Le problème a disparu après que j'ai tué tous les karma processus et a fait une nouvelle
karma start
.J'ai eu un face à la paume moment.
karma start
doit être exécuté dans le même répertoire que votrekarma.conf.js
fichier.karma start path/to/karma.conf.js
Cette erreur peut signifier que le navigateur ne peut pas trouver le serveur. Vérifiez si vous pouvez atteindre le serveur à l'adresse URL qu'il mentionne. Il pourrait être un problème de configuration de numéro de port, ou même (comme il l'a été dans mon cas),
localhost
être mal configuré. Je suppose que cela pourrait être le serveur n'est pas en cours d'exécution, ou une douzaine d'autres problèmes.Vérifiez si vous pouvez atteindre le serveur manuellement. Si vous ne pouvez pas résoudre ce problème.
Ce qui m'est arrivé lorsque j'avais une boucle sans fin dans mon code. En commentant (à l'aide de
xdescribe
dans le jasmin), récent code que j'ai écrit a obtenu les tests de nouveau.J'ai eu le même problème, aucun changement de code, tout simplement ré-exécution de tests travaillé il y a un mois.
Quand j'ai couru à partir
webstorm
, il semblait prendre un long moment pour capturer le navigateur, donc je me demandais si c'était du délai.J'ai donc essayé de réglage du navigateur à juste
Chrome
(j'ai été en utilisantphantomjs
ainsi), et l'attente. Ensuite réinitialisée àChrome
etPhantomJS
, maintenant c'est la fin.J'ai eu le même problème et essayé beaucoup de solutions proposées, j'ai trouvé, mais ce qui a finalement résolu pour moi a été de supprimer le dossier node_modules et obtenir tout ce que la nouvelle via npm install.
même question: Karma - Chrome a échoué 2 fois (impossible de démarrer). Abandonner
J'ai eu le même problème et j'ai fait tout ce que tout le monde à partir d'ici, dit sans aucun résultat. Dans mon cas, je n'ai pas l'init:
La deuxième fois, quand je suis dans la même situation a été quand j'ai essayé de faire
karma start
dans le mauvais dossier, pas où j'ai miskarma init
.Dans les deux cas, après que j'ai résolu le problème que j'ai reçu dans les veuves de la console:
L'installation de karma-cli
npm install -g karma-cli
résolu ce problème pour moi.Espérons que cette aide.
J'ai été confrontée au même problème et je l'ai résolu en tuant toutes les instances de chrome dans le Gestionnaire des Tâches. Il semble qu'il y avait " n " le nombre de test de coureurs en cours d'exécution. Lorsque vous fermez le karma test runner sans arrêter le serveur, c'est l'instance est toujours en vie.
Alors appuyez sur "ctrl + alt + delete', tuer toutes les sessions/instances de chrome et de redémarrer le Karma.
Ça marche!!!
Eu la même erreur récemment:
angular-cli
,S'avère que j'ai annulé une Jenkins emploi précédemment dans l'étape où les tests étaient en cours d'exécution, donc
ng test
ne quittez pas (avait une poignée de courseng
processus, jumelé avec[node] <defunct>
ceux, le blocage de la poursuite de l'exécution des tests). La Solution était de trouver et de tuer tous accrochésng
processus:J'ai eu le même problème et c'était un bug dans un test. Retrait qui fixe le code de l'erreur.