Ответ
- Линтеры (ESLint, Stylelint) – проверяют синтаксис и стиль кода. Например:
// ESLint может запретить var в пользу let/const
var x = 10; // ошибка, если правило "no-var" включено
-
Статический анализ (TypeScript, Flow) – выявляют типизацию и потенциальные ошибки.
-
Юнит-тесты (Jest, Mocha) – проверяют работу отдельных модулей. Пример:
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
-
Интеграционные/E2E-тесты (Cypress, Playwright) – тестируют сценарии пользователя.
-
Ревью кода – ручная проверка коллегами через GitHub/GitLab.
-
Метрики (CodeClimate, SonarQube) – оценивают сложность, дублирование и покрытие тестами.
-
Бенчмаркинг – проверка производительности (например, с Lighthouse).