Тестирование (QA) · Базовый — набор 1

Тестирование (QA) · терминов: 3 · усвоено: 0

0%
Экран 1 из 3Войдите, чтобы сохранять прогресс и получать баллы

Анализ кода (code analysis) · code analysis

Частота: высокая · Сложность: 3/5 · растёт

Анализ кода — автоматический разбор исходников для поиска ошибок, уязвимостей, нарушений стиля и метрик без запуска программы или во время её выполнения.

Статический анализ разбирает код без исполнения: линтеры (ESLint, Pylint), платформы качества (SonarQube), SAST-сканеры безопасности (Semgrep, CodeQL) и анализаторы вроде PVS-Studio. Он встраивается в CI/CD как quality gate, блокируя мерж при критичных находках, и даёт метрики — цикломатическую сложность, дублирование, покрытие тестами. Динамический анализ выполняется на работающем приложении (профилирование, sanitizers, DAST) и ловит проблемы, которые статика не видит. С 2024 года к классическим правилам добавился LLM-ревью: модели ищут логические дефекты и предлагают патчи прямо в pull request.

Примеры употребления

npx eslint src --max-warnings 0 — линт с запретом любых предупреждений в CI
semgrep --config=p/owasp-top-ten . — быстрый SAST-прогон по правилам OWASP
sonar-scanner в шаге CI с проверкой quality gate на новом коде
python -m pylint app/ — статический анализ Python-пакета
#static-analysis#sast#linting#quality-gate

Полная карточка в словаре — открыть в новой вкладке ↗