Есть JavaScript библиотека.
Мне дали задание покрыть её тестами.
И сказали для этого использовать Grunt и Karma.
Я почитал доки. Получается, что Grunt - это типа системы сборки, чтоб запускать разные задания и скрипты; и Karma - это система запуска тестов.
То есть и Grunt и Karma - это "запускаторы".
Кто-нибудь может мне разъяснить, в чём смысл использовать сразу оба - и Grunt и Karma?
P.S. Мне уже подсказали, что вместо Grunt сегодня уже используют Gulp, но это сути не меняет - зачем нужны ОБЕ системы?
Karma умеет только запустить браузер и скормить ему специальную страничку. И всё, даже сами тесты надо писать с использованием других библиотек. Если честно, я 12 лет в JS, но зачем нужна Karma до сих пор не понимаю.
grunt/gulp — таск-раннеры общего назначения, используются для организации всех процессов. Скажем, есть требование перед сборкой прогнать код через линтер и юнит-тесты и только потом собирать. Karma вам в этом не поможет.