Skip to main content

Справочник по метрикам и рейтингам

Изучите терминологию, используемую GitHub для оценки качества кода вашего репозитория.

Примечание.

GitHub Code Quality в настоящее время находится в public preview и может быть изменен. Во время public preview, Code Quality не будут оплачиваться, хотя Code Quality сканирование займет GitHub Actions минут.

В этой статье приведены определения метрик и оценок, используемых Code Quality.

Вы можете увидеть результаты на основе правил для вашего репозитория на вкладке " Безопасность " на вкладке Стандартные выводы под " Качество кода".

Определения метрик

В следующей таблице приведены определения для каждой метрики, которая сообщается для репозитория.

Единица измеренияDefinitionПримеры выводов
          **Надёжность**   | Оцените, выполняет ли код свою предназначенную функцию правильно, предсказуемо и последовательно. Надежный код не содержит ошибок, безопасно обрабатывает ошибки и работает должным образом в нормальных и пограничных условиях. | Проблемы с производительностью, параллелизмом, обработкой ошибок, корректностью, проектированием API, доступностью, интернационализацией или безопасностью |

| Ремонтопригодность | Оцените, насколько легко понять, изменить и расширить код с течением времени. Поддерживаемый код следует передовым практикам, позволяет избежать ненужной сложности и организован таким образом, чтобы упростить будущие изменения и совместную работу. | Неиспользование лучших практик, неиспользуемый/мертвый код, дублирующийся код, сложность, логическая избыточность, неадекватная документация, проблемы с зависимостями |

Уровни серьезности

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

SeverityDefinition
          **Error** | Указывает на проблему высокой степени серьезности, которая может привести к ошибкам, сбоям или серьезным рискам удобства обслуживания. |

| Предупреждение | Указывает на проблему средней степени серьезности, которая может повлиять на качество или надежность кода, но не является критической в данный момент. | | Примечание. | Указывает на проблему низкой степени серьезности, незначительное улучшение или рекомендацию. Эти результаты полезны для поддержания работоспособности и удобства сопровождения кода. |

Определения рейтингов

Эти рейтинги используются для обобщения общей надежности и удобства обслуживания репозитория на основе серьезности результатов на основе правил, найденных с помощью CodeQL сканирования полной ветви по умолчанию:

RatingDefinitionКритерии (на основе полученных данных)
          **отличные**        | 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)