Les coureurs de l'épreuve pour AngularJS - comment faire pour exécuter les tests à partir de l'IDE eclipse et serveur CI sans trop de complication?

Je suis en train d'essayer de trouver un moyen simple de faire des tests sur angularjs application.
Je suis nouveau sur le test, c'est un peu dur à comprendre toutes les options et la différence entre eux.

Mon objectif: être capable d'exécuter les tests simplement à partir de l'intérieur de mon IDE Eclipse.
Et de tests de code sur le navigateur google chrome.

J'ai trouvé le jasmin pour être le choix évident pour l'écriture de la js tests unitaires. Le problème est de choisir un coureur à la fois pour le jasmin tests et pour e2e tests.

Essayer de faire simple, je suis venu avec l'idée suivante pour une installation:
Écrire les tests unitaires dans le jasmin, et le e2e tests dans phantomjs et syn.js.
Puis configurer eclipse pour exécuter phantomjs comme un outil externe, de sorte que la sortie va aller à la console dans eclipse.

J'ai aussi l'intention d'avoir une IC de l'emploi dans Jenkins, et à ma compréhension Jenkins pouvez également exécuter fantôme, donc, théoriquement, cette solution fonctionne de la même pour la CI.

Sinon, il y a des essais de fonctionnement des outils comme le Karma et du Rapporteur. D'une part, ils semblent être recommandé, mais d'un autre côté, ils semblent à moi comme overkill dans certains cas. Ils exigent beaucoup de différents outils/services/processus en cours d'exécution pour le travail, et il semble comme une douleur de maintenir tous que le programme d'installation en cas de casse.

À ma compréhension: rapporteur s'exécute sur webdriverjs qui s'exécute sur nodejs, et il faut que le sélénium serveur en cours d'exécution en arrière-plan, et au-dessus de tout ce que le sélénium ouvre vrai navigateur de windows qui me semble un peu inutile, par opposition à la tête de test du navigateur.

Puis il y a le Karma, que je n'ai pas encore pleinement comprendre ce qu'il est censé faire. De ce que j'ai lu il surveille les fichiers dans mon projet et à chaque fois qu'un fichier est modifié, il exécute les tests. Je ne suis pas sûr de savoir comment il exécute les tests - est-il aussi à l'aide de sélénium?

Et enfin, il y a grognement et yeoman, que je ne comprenais pas tout ce qu'ils font et comment ils interagissent ou ajustement avec les autres outils que j'ai énumérés.

Je vous serais reconnaissant si quelqu'un pouvait préciser ce que ces différents outils, et comment ils s'organisent. Aussi, comment pourraient-ils s'adapter avec Jenkins en tant que serveur CI?

Aussi, si vous pouvez commenter sur mon "simple d'installation" - t-il un sens? Ai-je raté quelque chose?

OriginalL'auteur Malki | 2014-02-10