WorcesterSociety/umass-grader


An automated grading tool for UMass COMPSCI 220 (and maybe beyond).

  • Users starred: 2
  • Users forked: 0
  • Users watching: 2
  • Updated at: 2017-01-31 09:08:12

UMass Grader Build Status

An automated grading tool for COMPSCI 220 (and hopefully beyond)!

Getting Started

In order to use the grader, you'll need Docker and Python 3. You'll also need the command-line utility unrar installed. To install these on Ubuntu, you can run the vagrant.sh script. Otherwise, you can use Vagrant to start a virtula machine with the initial setup complete.

Grading Assignments

To grade an individual assignment, you can use the following command:

./grader/app.py path/to/tests path/to/assignment/root

To grade a Moodle-exported assignment archive, you can use the following command:

./grader/app.py path/to/tests path/to/assignments.zip

To grade a Moodle-exported archive and produce an importable CSV, you can use the following command:

./grader/app.py path/to/tests path/to/assignments.zip -o output.csv

However, you should note that producing an output.csv requires a student ID database that can be built using the generate-db.py script in utils as well as a positive feedback database consisting of one or more line-separated responses to grades of 100%. The default paths for these databases are spire-ids.db and positive-feedback.db respectively.

License

You can find the exact details of the license in LICENSE.md, but this project is licensed under the GNU Public License (GPL). The general gist is that all changes to this project must themselves be open source.