Тестирование блока Javascript - манипуляция DOM

Я новичок в тестировании Javacript. Меня беспокоит одна вещь. При тестировании javascript нам часто приходится выполнять манипуляции с DOM. Похоже, я тестирую метод/функцию в контроллере/компоненте, но мне все равно нужно зависеть от элементов HTML в моих шаблонах. После изменения идентификатора (или атрибутов, используемых для выбора в моих тестовых случаях) мои тестовые примеры также должны быть ИЗМЕНЕНЫ! Разве это не нарушит цель модульного тестирования?

Ответ 1

Одна из самых сложных частей модульного тестирования javascript - это не тестирование, и оно учит, как архитектовать свой код, чтобы он можно было тестировать.

Вам нужно структурировать свой код с четким разделением проверяемой логики и манипуляций с DOM.

Мое правило:

Если вы тестируете все, что зависит от структуры DOM, вы делаете это неправильно.

Вкратце: попробуйте протестировать манипуляции с данными и логические операции.