В настоящее время я использую задачу gulp для тестирования проекта. Это запускает задачи, используя следующие инструменты:
- Карма (асинхронный)
- Транспортир (порожденный процесс)
- ESlint (используя
gulp-eslint
) - HTMLHint (с помощью
gulp-htmlhint
) - Stylelint (с помощью
gulp-postcss
)
Задача завершается с ошибкой, если какая-либо из этих задач не удалась.
Все эти инструменты имеют превосходные интерфейсы cli. Поэтому я решил, что я хочу запустить эти инструменты с помощью теста npm script.
Чтобы упростить, пусть все инструменты запускаются путем простого вызова их без каких-либо флагов. Затем это можно сделать, используя:
{
...
"scripts": {
"test": "karma && protractor && eslint && htmlhint && stylelint"
},
...
}
Однако это означает, что если karma
не выполняется, ни один из других инструментов не будет запущен.
Можно ли создать установку, в которой все эти инструменты будут запущены, но npm test
не удастся, если какая-либо из команд не удалась?