J'utilise ce générateur yeoman: https://github.com/Swiip/generator-gulp-angular
Il installe trois applications de test: Jasmine, Karma, Protractor Selon cet article ( Dois-je utiliser Protractor ou Karma pour mes tests de bout en bout? ), je devrais utiliser: Karma pour les petits tests de par exemple un seul contrôleur. Protactor si je veux tester l'ensemble de l'application et simuler un utilisateur parcourant mon application. Selon ce blog ( http://andyshora.com/unit-testing-best-practices-angularjs.html ) j'utiliserais Jasmine pour les tests unitaires et Karma pour les tests d'intégration de bout en bout.
Je suppose que Jasmine est le langage où les tests sont écrits et les deux autres exécutent le code, est-ce correct? De plus, si je n'ai jamais écrit de test, qui est le plus important à apprendre en premier/à se concentrer?
Karma est un testeur, il exécute donc votre test. Jasmine est le framework qui vous permet d'écrire un test
À mon avis, à Angularjs, vous:
Le rapporteur est fait pour les tests E2E (teste la navigation comme un vrai utilisateur). Il combine WebDriverJS avec Jasmine et vous permet d'écrire des tests de bout en bout (vous simulez un navigateur réel et prenez des actions réelles) avec la syntaxe Jasmine.
Ce type de test est également très important dans une application Web.
Vous ne devez pas tout tester, en particulier au début du projet, ces types de tests s'accompagnent généralement d'un niveau élevé de maintenance (c'est-à-dire que lorsque vous changez d'écran, vous devrez peut-être changer le test).
Ce que je fais, c'est tester le chemin critique et les fonctionnalités. J'ai fait une application de lecture, donc dans mon cas, c'était la connexion, l'inscription, le paiement, le livre d'accès et le lecteur d'accès.