Existe-t-il un moyen d'exécuter ng test
pour un seul fichier plutôt que pour l'ensemble de la suite de tests? Dans l'idéal, j'aimerais obtenir la boucle de rétroaction la plus rapide possible lorsque j'édite un fichier, mais karma
exécute la suite entière à chaque sauvegarde, ce qui est un peu lent lorsque vous créez une suite de tests assez volumineuse.
Ceci est différent de Comment exécuter seulement une spécification de test avec angular-cli en ce que cette question concerne l'exécution d'une spécification individuelle. Il s’agit d’exécuter un fichier individuel. La solution implique les mêmes caractéristiques techniques de Jasmine, mais la nature de la question est légèrement différente.
J'ai découvert que Jasmine vous permettait de préfixer les méthodes describe
et it
avec un f
(pour le focus?). Donc, fdescribe
et fit
. Si vous utilisez l'un ou l'autre, le karma n'exécutera que les tests appropriés. Donc, pour focaliser le fichier actuel, vous pouvez simplement prendre le niveau supérieur describe
et le changer en fdescribe
. Fonctionne pour mes besoins.
Il est à noter que vous pouvez désactiver un test particulier sans commenter de xdescribe
et xit
xdescribe('Hello world', () => {
xit('says hello', () => {
expect(helloWorld())
.toEqual('Hello world!');
});
});
Et comme quelqu'un l'a déjà dit, si vous voulez vous concentrer sur un test, alors fdescribe
et fit
fdescribe('Hello world', () => {
fit('says hello', () => {
expect(helloWorld())
.toEqual('Hello world!');
});
});
Utiliser npm lance le test fichier.component.spec.ts fonctionnera pour moi dans la version angular 7.