Примечание.
GitHub Code Quality в настоящее время находится в public preview и может быть изменен. Во время public preview, Code Quality не будут оплачиваться, хотя Code Quality сканирование займет GitHub Actions минут.
В этой статье приведены определения метрик и оценок, используемых Code Quality.
Вы можете увидеть результаты на основе правил для вашего репозитория на вкладке " Безопасность " на вкладке Стандартные выводы под " Качество кода".
Определения метрик
В следующей таблице приведены определения для каждой метрики, которая сообщается для репозитория.
| Единица измерения | Definition | Примеры выводов |
|---|
**Надёжность** | Оцените, выполняет ли код свою предназначенную функцию правильно, предсказуемо и последовательно. Надежный код не содержит ошибок, безопасно обрабатывает ошибки и работает должным образом в нормальных и пограничных условиях. | Проблемы с производительностью, параллелизмом, обработкой ошибок, корректностью, проектированием API, доступностью, интернационализацией или безопасностью |
| Ремонтопригодность | Оцените, насколько легко понять, изменить и расширить код с течением времени. Поддерживаемый код следует передовым практикам, позволяет избежать ненужной сложности и организован таким образом, чтобы упростить будущие изменения и совместную работу. | Неиспользование лучших практик, неиспользуемый/мертвый код, дублирующийся код, сложность, логическая избыточность, неадекватная документация, проблемы с зависимостями |
Уровни серьезности
Уровни серьезности используются для указания потенциального влияния или срочности определения качества кода. Они помогают пользователям расставлять приоритеты в усилиях по устранению неполадок и сообщать заинтересованным сторонам о рисках. Серьезность определяется правилом, которое обнаружило проблему, в соответствии с соглашениями CodeQL и отраслевыми стандартами.
| Severity | Definition |
|---|
**Error** | Указывает на проблему высокой степени серьезности, которая может привести к ошибкам, сбоям или серьезным рискам удобства обслуживания. |
| Предупреждение | Указывает на проблему средней степени серьезности, которая может повлиять на качество или надежность кода, но не является критической в данный момент. | | Примечание. | Указывает на проблему низкой степени серьезности, незначительное улучшение или рекомендацию. Эти результаты полезны для поддержания работоспособности и удобства сопровождения кода. |
Определения рейтингов
Эти рейтинги используются для обобщения общей надежности и удобства обслуживания репозитория на основе серьезности результатов на основе правил, найденных с помощью CodeQL сканирования полной ветви по умолчанию:
| Rating | Definition | Критерии (на основе полученных данных) |
|---|
**отличные** | Codebase демонстрирует передовые методы обеспечения надежности и удобства обслуживания. | Не обнаружено никаких данных о качестве кода |
| Хороший | В Codebase есть проблемы с низким уровнем серьезности или предлагаются незначительные улучшения. | ≥1 Определение уровня "Примечание" | | Ярмарка | В Codebase есть проблемы средней степени серьезности, которые могут повлиять на качество, но не являются критическими. | ≥1 Определение уровня "Предупреждение" | | Нуждается в доработке| Codebase имеет проблемы высокой степени серьезности, включая ошибки или серьезные риски удобства обслуживания. | ≥1 Определение уровня "Ошибка" |
Дополнительные материалы
-
[AUTOTITLE](/code-security/code-quality/concepts/about-code-quality) -
[AUTOTITLE](/code-security/code-quality/how-tos/interpret-results)