или mocha+enzyme?
Сложилось впечатление, что если проект не планирует становится мега-супер большим, то тогда скорость jsdom не будет играть особой роли, поэтому mocha будет лучшим выбором, но с другой стороны jsdom не позволяет только навигацию по приложению моделировать и css тестить, а оно вообще надо, если нет, то тогда jest? В такой непонятной ситуации хочется выбрать тупо то, что популярнее, в данном случае jest, если наступлю на грабли, то буду уже знать, в каких ситуациях это не лучший выбор.
По поводу react-testing-library и enzyme такое чувство, что enzyme по возможностям работы с dom не уступает, но при этом не вводит лишних ограничений на работу с состоянием компонентов.
Правильно рассуждаю или всё это глупость и надо смотреть на конкретные кейсы, которые есть в проекте и конкретные методы тестирования, которые предоставляет та или иная технология и общего какого-то ответа тут нет?
нужно смотреть по необходимости, какие кейсы нужно покрывать тестами. Если речь про реакт-компоненты, то react-testing-library нормальное решение. Если речь про тестирование функционала, то лучше e2e тесты (тот же cypress например).
Речь про юнит-тесты компонентов, да. А в чем преимущество react-testing-library над enzyme? Пока кажется, что вторая либа может то же, что и первая, только ещё позволяет тестировать стейт, пропсы и т.п.
RTL тоже умеет стейты и пропсы тестить (если чуток доку покурить). Нам в компании этого вполне достаточно
Понял, спасибо за ответ!
у RTL преимущество, что он из коробки умеет всё основное и очень мало нужно настраивать.. да и порог вхождения там намного ниже, имхо. А это бывает очень важно в компании с кучей мидлов и джунов, которые про тесты едва слышали.
никому не рассказывайте)))
Обсуждают сегодня