Giter VIP home page Giter VIP logo

gradescope_autograder's Introduction

Gradescope Autograder Script

A marking script (autograder code) to mark the submissions using Input/Output in a file format with suitable late submission penalty for Python assignments/submissions by Arpit Gole.

This marking script makes the setting up of the assignment easy. Just change 4 variables in the run_autograder script as per your needs. These variables are:

  1. num_of_test_cases - Specifies the total number of test cases needs to be satisfied.
  2. points_per_test_case - Marks related to each test case.
  3. student_code_file_name1/student_code_file_name2 - Main files to run the test cases on.
  4. no_of_test_cases_to_run_for_file1 - Number of test cases to run on each submitted file.

Additionally, this marking script can make 2 different files. Ideally, can extend the same idea to mark n number of files (slight modifications needed.)

Running

  1. Gradescope marks the submission based on the marking flow defined in run_autograder script. Modify to have a custom marking flow.

  2. Package management for the submission environment is done through setup script. Currently, the submission will run in Python 3.6.9 and the run_autograder script will run in Python 3.8.0. Yes, there are 2 different environments:- one submission and another running the marking script.

  3. (Optional) Extra level of package management can de done through requirements.txt.

  4. The test_case_files folder houses all the Input and Output on test case basis. For each test case 1 Input and 1 Output (correct) is supplied to run the submission.

  5. Finally, create a *.zip of these 4 files: run_autograder, setup, test_case_files and requirements.txt to upload it on the Gradescope's Configure Autograder section. A sample is provided.

  6. (Optional) Providing python scripts to Test Autograder upon successful built of docker image.

Happy Marking.

gradescope_autograder's People

Contributors

arpit-gole avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.