Skip to content

Introduction

Autolab is an open-source automated code grading platform developed at Carnegie Mellon University and used by universities around the world. The UB CSE IT department maintains a customized variant of Autolab for use in our courses. It's hosted on premises at UB, and you can access it at https://autolab.cse.buffalo.edu.

This documentation will serve as a guide, primarily for instructors, on how to use Autolab. It covers nearly everything an instructor may be interested in, from the basics to more advanced features. If you have any questions after consulting the documentation, feel free to contact us.

Table of Contents

Getting Started

Course Management

Create an Assessment

Create an Autograder

Grader Assignment Tool

UB Course Sections

Create an Autograding Image

The Autograding Process

Sample Autograders

Sample autograders are located in the sample_files directory of the GitHub repository for this documentation. These are referenced throughout the documentation. Some autograder directories contain multiple correct and/or incorrect solutions to demonstrate how the grader works in different situations.

  • autograder0 is the most minimal autograder just to give you an idea of the format.
  • autograder1 is a more realistic autograder that grades 3 problems differently, but it's not robust enough for real use.
  • autograder2 demonstrates how to use the settings.json file to get metadata about the submission.
  • autograder3 demonstrates how to grade an embedded form submission.
  • autograder4 demonstrates how to create an embedded form that allows submitting a file.

Private documentation

For IT staff, there's also a private internal documentation repository available here: https://github.com/UB-CSE-IT/Autolab-Internal-Docs.