Запуск одного тестового файла
Есть ли способ запустить ng test
для одного файла, а не для всего набора тестов? В идеале, я хотел бы получить максимально быстрый цикл обратной связи, когда я редактирую файл, но karma
выполняет весь набор при каждом сохранении, что немного медленно, когда вы создаете достаточно большой набор тестов.
Это отличается от того, как выполнить только одну тестовую спецификацию с angular-cli тем, что этот вопрос касается запуска отдельной спецификации. Это о запуске отдельного файла. Решение включает в себя те же характеристики Jasmine, но суть вопроса немного отличается.
Ответы
Ответ 1
Я обнаружил, что Jasmine позволяет префикс describe
и it
методов с помощью f
(для фокуса?). Итак, fdescribe
и fit
. Если вы используете любой из них, карма будет проводить только соответствующие тесты. Итак, чтобы сфокусировать текущий файл, вы можете просто взять верхний уровень describe
и изменить его на fdescribe
. Работает для моих целей.
Ответ 2
Стоит отметить, что вы можете отключить определенный тест, не комментируя xdescribe
и xit
xdescribe('Hello world', () => {
xit('says hello', () => {
expect(helloWorld())
.toEqual('Hello world!');
});
});
И как кто - то уже сказал, что если вы хотите, чтобы сосредоточиться на какой - то тест, то fdescribe
и fit
fdescribe('Hello world', () => {
fit('says hello', () => {
expect(helloWorld())
.toEqual('Hello world!');
});
});
Ответ 3
Работает, если вы указали свой spec файл в качестве параметра.
Например:
нг тест foo.spec.ts
Надеюсь это поможет.