И так, поговорим о тестировании.
Когда-то очень давно я юзал Jasmine, затем Mocha. Затем, в один самый обычный будний день все поменялось.
Проводя код ревью одного из PR в новом проекте, я увидел тесты на tape. До этого о нем не слышал. Возмутило, но такие тесты лучше чем ничего
Уже позже понадобилось самому подключаться к этому проекту, тестов было написано уже вагон, и я смирился и решил оставить tape.
С тех пор евангелирую его всегда и везде, рекомендую начинать новые проекты с ним. Он очень прост, и в нем нет даже раннера из коробки.
Любой тест — обычный js файл. Без неизвестно откуда взявшихся волшебных глобальных переменных и неочевидности с асинхронщиной.
Более того, можно делать суперкрутой реюз кода и динамически менять количества проверок. В tape всего около 200 LoC
Tape — это (грубо говоря) assert из node.js + обертка для планирования ассертов + вывод в формат TAP, который придумали еще перловики