Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы, возможно, еще выполняется. Актуальные сведения см. в документации на английском языке.

Использование автоматической проверки

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

Кто может использовать эту функцию

Organization owners who are admins for a classroom can set up and use autograding on assignments in a classroom. Дополнительные сведения о администраторах аудитории см. в разделе Об управлении классами.

Сведения об автоматической проверке

Вы можете использовать автоматическую классификацию для автоматической проверки работы учащегося по заданию в GitHub Classroom. Тесты настраиваются для задания, и тесты выполняются немедленно каждый раз, когда учащийся отправляется в репозиторий заданий на GitHub.com. Учащийся может просматривать результаты теста, вносить изменения и отправлять новые результаты.

После того как учащийся примет задание, при каждой отправке в репозиторий заданий GitHub Actions выполняет команды для теста для автоматической проверки в среде Linux, содержащей новейший код учащегося. GitHub Classroom создает необходимые рабочие процессы для GitHub Actions. Для использования автоматической проверки опыт работы с GitHub Actions не требуется.

Вы можете использовать платформу тестирования, выполнить пользовательскую команду, записать тесты входных или выходных данных или объединить различные методы тестирования. Среда Linux для автоматической проверки содержит множество популярных программных средств. Дополнительную информацию можно найти в сведениях для последней версии Ubuntu в статье Спецификации для средств выполнения тестов в среде GitHub.

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

Общие сведения о задании с результатами автоматической проверки

Методы проверки

Существует два метода проверки: тесты входных и выходных данных и выполнение команд.

Тест входных и выходных данных

При необходимости тест входных и выходных данных выполняет команду настройки, а затем предоставляет стандартные входные данные для команды теста. GitHub Classroom оценивает выходные данные команды теста, сверяя с ожидаемым результатом.

ПараметрОписание
Имя тестаИмя теста, которым он обозначен в журналах.
Команда настройкиНеобязательно. Команда, выполняемая перед тестами, например компиляция или установка.
Команда выполненияКоманда для выполнения теста и создания стандартных выходных данных, которые будут оценены.
Входные данныеСтандартные входные данные для команды выполнения.
Ожидаемые выходные данныеВыходные данные, которые ожидаются в стандартных выходных данных команды выполнения.
СравнениеТип сравнения выходных данных команды выполнения и ожидаемых выходных данных

  • Включено — тест считается пройденным, если ожидаемые выходные данные
    есть в любой части стандартных выходных данных команды выполнения.
  • Точно — тест считается пройденным, если ожидаемые выходные данные полностью идентичны
    стандартным выходным данным команды выполнения.
  • Регулярное выражение — тест считается пройденным, если регулярное выражение
    в ожидаемых выходных данных совпадает со стандартными выходными данными команды выполнения.
TimeoutЗначение в минутах длительности выполнения теста, прежде чем он будет завершен со сбоем.
ТочкиНеобязательно. Количество баллов, которые присуждаются за тест, в составе общей оценки.

Тест команды выполнения

При выполнении теста команды выполнения запускается команда настройки, а затем команда теста. GitHub Classroom проверяет выходное состояние команды теста. Код выхода 0 приводит к успешному выполнению, а любой другой код выхода приводит к сбою.

GitHub Classroom содержит предустановки для тестов команд выполнения на разных языках программирования. Например, тест Запуска узла указывает в команде настройки npm install, а в команде теста npm test.

ПараметрОписание
Имя тестаИмя теста, которым он обозначен в журналах.
Команда настройкиНеобязательно. Команда, выполняемая перед тестами, например компиляция или установка.
Команда выполненияКоманда для выполнения теста и создания кода выхода для оценки.
TimeoutЗначение в минутах длительности выполнения теста, прежде чем он будет завершен со сбоем.
ТочкиНеобязательно. Количество баллов, которые присуждаются за тест, в составе общей оценки.

Настройка тестов для автоматической проверки задания

Вы можете добавить тесты для автоматической проверки во время создания нового задания. Дополнительные сведения см. в разделе Создание отдельного назначения или Создание назначения группы.

Вы можете добавлять, изменять или удалять тесты для автоматической проверки для существующего задания. Все изменения, внесенные через пользовательский интерфейс Classroom, будут отправлены в существующие репозитории учащихся, поэтому будьте внимательны при редактировании тестов.

  1. Войдите в GitHub Classroom. 1. В списке аудиторий выберите аудиторию, которую хотите просмотреть. Аудитория в списке аудиторий для организации 1. Справа от назначения, которое вы хотите изменить, нажмите на . Значок карандаша для редактирования назначения в списке назначений
  2. На левой боковой панели щелкните Оценки и обратная связь. Пункт "Оценки и обратная связь" слева от основных сведений о задании
  3. Добавление, изменение или удаление теста для автоматической проверки.
    • Чтобы добавить тест, в разделе "Добавить тесты с автоматической проверкой" выберите раскрывающееся меню Добавить тест, а затем метод оценки, который хотите использовать. В раскрывающемся меню "Добавить тест" выберите метод оценки Настройте тест, а затем нажмите кнопку Сохранить тестовый случай. Кнопка "Сохранить тестовый случай" для теста для автоматической проверки
    • Чтобы изменить тест, справа от имени теста щелкните . Значок карандаша для редактирования теста для автоматической проверки Настройте тест, а затем нажмите кнопку Сохранить тестовый случай. Кнопка "Сохранить тестовый случай" для теста для автоматической проверки
    • Чтобы удалить тест, справа от имени теста щелкните . Значок корзины для удаления теста для автоматической проверки
  4. В нижней части страницы нажмите кнопку Обновить задание. Кнопка "Обновить задание" в нижней части страницы.

Просмотр и скачивание результатов тестов для автоматической проверки

Скачивание результатов автоматической проверки

Вы также можете загрузить CSV-файл оценок учащихся, выставленных функцией автоматической проверки, с помощью кнопки "Загрузить". При этом будет создан и скачан CSV-файл, содержащий ссылку на репозиторий учащегося, дескриптор GitHub учащегося, идентификатор в списке, метка времени отправки и оценка функции автоматической проверки.

Кнопка "Загрузить" с выделенным значением "Загрузить выделенные оценки" и дополнительным параметром "Скачать репозитории"

Просмотр отдельных журналов

  1. Войдите в GitHub Classroom. 1. В списке аудиторий выберите аудиторию, которую хотите просмотреть. Аудитория в списке аудиторий для организации 1. В списке назначений выберите назначение, которое хотите просмотреть. Назначение в списке назначений для аудитории
  2. Справа от задания нажмите кнопку Просмотреть тест. Кнопка "Просмотреть тест" для отправки задания
  3. Просмотрите выходные данные теста. Дополнительные сведения см. в разделе «Использование журналов выполнения рабочего процесса».

Дополнительные материалы