Acerca de las calificaciones automáticas
Puedes utilizar las calificaciones automáticas para verificar el trabajo de un alumno automáticamente para una tarea en GitHub Classroom. Configuras las pruebas para una tarea y estas se ejecutan automáticamente cada vez que un alumno realiza una inserción en un repositorio de tareas en GitHub.com. El alumno puede ver los resultados de la prueba, hacer cmabios y subir información para ver resultados nuevos.
Después de que un alumno acepte una tarea, en cada subida al repositorio de la misma (o en una programación definida por el profesor), GitHub Actions ejecuta comandos para tu prueba de calificaciones automáticas en un ambiente Linux que contiene el código más nuevo del alumno. GitHub Classroom crea los flujos de trabajo necesarios para GitHub Actions. No necesita experiencia con GitHub Actions para usar la calificación automática, pero opcionalmente puede modificar las configuraciones de flujo de trabajo para satisfacer sus necesidades. Para más información sobre los flujos de trabajo y GitHub Actions, consulta Acerca de la integración continua con Acciones de GitHub.
Puedes utiizar un marco de trabajo de prueba, ejecutar un comando personalizado, escribir pruebas de entrada/salida, o combinar varios métodos de pruebas. El ambiente de Linux para las calificaciones automáticas contienen muchas herramientas de software populares. Para más información, consulta la versión más reciente de Ubuntu en Utilizar los ejecutores hospedados en GitHub.
Puedes ver un resumen de qué estudiantes están pasando las pruebas con calificación automática si navegas a la tarea en GitHub Classroom. Una marca verde significa que el alumno está pasando todas las pruebas, la X roja significa que el alumno falló en algunas o todas las pruebas. Si otorgas puntos para una o más pruebas, entonces una burbuja mostrará la puntuación de éstas con base en la puntuación máxima posible para la tarea.
Métodos para calificar
GitHub Classroom proporciona diferentes valores preestablecidos de prueba de calificación automática que se pueden usar si no desea configurar los flujos de trabajo de GitHub Actions usted mismo. También puede optar por usar datos personalizados GitHub Actions de YAML para definir su propio flujo de trabajo de calificación automática.
Uso de valores preestablecidos de GitHub
Puede usar valores preestablecidos sin ningún conocimiento de GitHub Actions. Puede escribir información sobre las pruebas de calificación automática y GitHub Classroom agregará automáticamente los archivos necesarios a los repositorios de asignaciones de alumnos.
Hay tres tipos de valores preestablecidos: pruebas de entrada y salida, pruebas de Python y pruebas de comandos de ejecución.
Prueba de entrada/salida
Una prueba de entrada/salida ejecuta un comando de configuración opcionalmente y proporciona una entrada estándar de un comando de prueba. GitHub Classroom evalúa la salida del comando de prueba contra un resultado esperado.
Configuración | Descripción |
---|---|
Nombre de la prueba | El nombre de la prueba para identificarla en las bitácoras |
Comando de configuración | Opcional. Un comando a ejecutar antes de las pruebas, tal como una compilación o instalación |
Comando de ejecución | El comando para ejecutar la prueba y generar una salida estándar para su evaluación |
Entradas | Entrada estándar para el comando de ejecución |
Salida prevista | La salida que quieres ver como estándar para el comando de ejecución |
De comparación | El tipo de comparación entre el la salida del comando de ejecución y la salida esperada
|
Tiempo de espera | En minutos, lo que tarda una prueba en ejecutarse antes de que resulte en un fallo |
Puntos | Opcional. La cantidad de puntos que vale la prueba contra una puntuación total |
Prueba de Python
Una prueba de Python ejecuta un comando de instalación y, a continuación, ejecuta pytest
. El número de puntos otorgados dependerá del número de pruebas del conjunto de pruebas pytest
que el alumno supere. Cada prueba vale el mismo número de puntos; puede cambiar cuántos puntos vale el conjunto de pruebas completo cambiando la configuración Points
.
Configuración | Descripción |
---|---|
Nombre de la prueba | El nombre de la prueba para identificarla en las bitácoras |
Comando de configuración | Opcional. Un comando a ejecutar antes de las pruebas, tal como una compilación o instalación. Algunas dependencias ya están instaladas, pero puede instalar más si es necesario. No es necesario usar sudo , y debe usar pip en lugar de pip3 . |
Comando de ejecución | El comando para ejecutar la prueba y generar un código de salida para evaluación |
Tiempo de espera | En minutos, lo que tarda una prueba en ejecutarse antes de que resulte en un fallo |
Puntos | Opcional. El número total de puntos que vale todo el conjunto pytest . Cada prueba valdrá Points / number_of_tests |
Prueba de comando de ejecución
Una prueba de comando de ejecución ejecuta un comando de configuración y luego un comando de prueba. GitHub Classroom verifica el estado de salida del comando de prueba. Un código de salida de 0
dará un resultado correcto y cualquier otro código de salida producirá un error.
GitHub Classroom proporciona preajustes para un las pruebas de comandos de ejecución específicas de lenguaje para varios lenguajes de programación. Por ejemplo, la prueba Ejecutar nodo rellena previamente el comando de instalación con npm install
y el comando de prueba con npm test
.
Configuración | Descripción |
---|---|
Nombre de la prueba | El nombre de la prueba para identificarla en las bitácoras |
Comando de configuración | Opcional. Un comando a ejecutar antes de las pruebas, tal como una compilación o instalación |
Comando de ejecución | El comando para ejecutar la prueba y generar un código de salida para evaluación |
Tiempo de espera | En minutos, lo que tarda una prueba en ejecutarse antes de que resulte en un fallo |
Puntos | Opcional. La cantidad de puntos que vale la prueba contra una puntuación total |
Uso de un flujo de trabajo personalizado de GitHub Actions
En lugar de usar valores preestablecidos, también puede agregar cualquier flujo de trabajo de GitHub Actions al archivo .github/workflows/classroom.yml
del repositorio de código de inicio.
Puede editar el archivo .github/workflows/classroom.yml
directamente desde la página de edición de asignaciones seleccionando YAML personalizado en lugar de valores preestablecidos de GitHub. Al hacer clic en Convertir al archivo de flujo de trabajo, se le pedirá que confirme los cambios en el repositorio de código de inicio. Esta sincronización solo funcionará si el repositorio de código de inicio está en la misma organización que el aula. Si el repositorio de código de inicio está en otra organización, debe editar el archivo .github/workflows/classroom.yml
manualmente.
Configurar las pruebas de calificación automática para una tarea
Puedes agregar pruebas de calificación automática durante la creación de una tarea nueva. Para más información, consulta "Crear una tarea individual" o "Crear una tarea de grupo".
Puedes agregar, editar o borrar las pruebas de calificación automática para una tarea existente. Todos los cambios que se hagan a través de la IU del aula se subirán a los repositorios existentes de los alumnos, así que edita tus pruebas con cuidado.
-
Inicia sesión en GitHub Classroom.
-
En la lista de aulas, da clic en aquella que quieras ver.
-
A la derecha de la tarea que quiera editar, haga clic en .
-
En la barra lateral izquierda, haga clic en Calificación y comentarios.
-
Agrega, edita o borra una prueba de calificación automática.
-
Para agregar una prueba, en "Agregar pruebas de calificación automática", seleccione el menú desplegable Agregar prueba y, después, haga clic en el método de calificación que quiera usar. Configure la prueba y, a continuación, haga clic en Guardar caso de prueba.
-
Para editar una prueba, a la derecha del nombre de ésta, da clic en . Configure la prueba y, a continuación, haga clic en Guardar caso de prueba.
-
Para borrar una prueba, a la derecha del nombre de ésta, da clic en .
-
-
En la parte inferior de la página, haga clic en Actualizar asignación.
Configuración al ejecutar pruebas de calificación automática
De forma predeterminada, las pruebas de calificación automática se ejecutarán automáticamente cada vez que un alumno inserte en un repositorio de asignaciones en GitHub.com. Sin embargo, si desea administrar los minutos de GitHub Actions, puede cambiar este comportamiento.
- Inicia sesión en GitHub Classroom.
- En la lista de aulas, da clic en aquella que quieras ver.
- A la derecha de la tarea que quiera editar, haga clic en .
- En la barra lateral izquierda, haga clic en Calificación y comentarios.
- Debajo de la lista de pruebas de calificación automática, puede configurar cuando se ejecuten las pruebas de calificación automática.
- Cada vez que un alumno envía una asignación: este es el comportamiento predeterminado.
- Según una programación: puede establecer una hora cada día o cada semana para que se ejecuten pruebas de calificación automática.
- Manualmente: las ejecuciones de pruebas de calificación automática se desencadenarán manualmente desde el panel de asignación.
Ver y descargar los resultados de las pruebas de autoevaluación
Descargar los resultados de autoevaluación
Puede descargar un CSV con los detalles de las asignaciones de los alumnos mediante el botón "Descargar" en la página de información general. Esto generará un CSV de descarga que contiene un enlace al repositorio del alumno, a su manejador de GitHub, identificador de lista, marca de tiempo de emisión y puntuación de autoevaluación.
Ver bitácoras individuales
- Inicia sesión en GitHub Classroom.
- En la lista de aulas, da clic en aquella que quieras ver.
- En la lista de tareas, da clic en aquellaque quieras ver.
- A la derecha del envío, haga clic en .
- Revisa la salida de la prueba. Para más información, consulta Uso de registros de ejecución de flujo de trabajo.