При рассмотрении вопроса об обновлении служебных страниц Hurriyet.com.tr в мае появилась возможность внести изменения в структуру, которую мы используем на стороне интерфейса. Первое преимущество заключается в обновлении таких библиотек, как Bootstrap. Второй - облегчить переход в модульную структуру на стороне JavaScript.

Чтобы написать JavaScript в модульном режиме, было достаточно удалить BabelJS на этапе сборки в Gulp и вместо этого добавить Webpack с небольшой компоновкой. Но если в этой структуре произойдут изменения, почему бы не восстановить старые недостатки? В задачах по исправлению ошибок, которые я делал раньше, я слишком сильно ощущал отсутствие строк комментариев. Как бы это могло быть, если бы мы стандартизировали это в этом проекте? Как можно было сделать шаг вперед и превратить комментарии в документацию с помощью такого инструмента, как JSDoc?

При поиске плюсов и минусов комментариев и документации я вспомнил, что работа, которую нужно было выполнить здесь, не входила в срок выполнения проекта. Если инструмент, который я собираюсь использовать, вызовет у меня проблему, и если я потрачу дополнительное время на ее решение, эта ситуация станет препятствием для выполнения работы. Ограниченное время здесь превращается в однозарядную пулю. Следует ли тратить его на настройку инструмента документации? Или к написанию интеграционного теста?

Тесты - это исполняемая документация.

Итак, здесь возникла тема написания тестов JavaScript. Фактически, поощрение написания модульных тестов на стороне бэкэнда заставило думать, что выполнение этого на стороне фронтенда также является предпочтительным. Вот почему интеграционный тест прошел на шаг впереди. (Почему не модульный тест? Это тема другой статьи…)

Я увидел, что Jest предлагает оптимальные решения после того, как попробовал несколько инструментов тестирования. Самым большим фактором здесь является простота использования и простота настройки.

Я хочу поделиться здесь своим опытом работы с инструментами тестирования js. Но об этом уже подробно писал Виталий Зайдман в своей статье Обзор тестирования JavaScript 2018. Если вам интересно, рекомендую прочитать эту статью.

На этой неделе я сделал свою первую корпоративную BBS. Я привел примеры того, зачем JS нужны тесты и методы тестирования, и, наконец, обработка Jest и его конфигурация. Вы можете увидеть презентацию, которую я сделал ниже. (Наполовину турецкий, наполовину английский, извините за это.)