AssignmentOS Lecturer & TA User Guide
  • 👋Welcome to AssignmentOS!
  • 🖌️Create Custom Assignment
    • 1️⃣Select/Create Course
    • 2️⃣Choose Language/Framework
    • 3️⃣Set Deadline
    • 4️⃣Add Description & Starter Code
    • 5️⃣Define Grading Criteria
  • 🤖Automated Grading
    • Automated Test-Suite Scoring
    • Hidden Tests
    • Language/Framework Guides
      • Java (Maven)
      • Java (Gradle)
      • Kotlin (Maven)
      • Kotlin (Gradle)
      • Scala
      • JavaScript
      • TypeScript
      • Python
      • Ruby
      • Go
      • PHP
      • .NET
      • C++
      • Rust
      • Haskell
      • Elixir
      • Solidity
      • SQL
      • Swift
      • R
      • Web
      • Angular
      • AngularJS
      • React
      • React Native
      • Vue.js
      • Svelte
      • Elm
      • Rails
      • Django
      • WordPress
      • Terraform
      • Ansible
      • Powershell
      • Full-Stack
  • 📤Sending Assignments
    • From UI
    • From LMS
    • From API
  • 🔎Tracking
    • Student Tracking
    • Self-Tracking For Students
  • 👁️Reviewing Results
    • View Score & Status
    • View Report
    • View AI Feedback
  • 💬Feedback
    • Leaving Feedback In-App
    • Leaving Feedback in GitHub/GitLab Repo
  • 🤹Management
    • Manage Courses
      • Create New Course
      • Duplicate Course
      • Delete Course
    • Manage Assignments
      • Update Assignment
      • Delete Assignment
    • Manage Users
      • Add New Users
      • User Roles
      • Delete Users
  • 🤍White-Labelling
    • Editing Email Templates
    • Editing From Email Address
  • 💫LMS Integrations
    • Moodle
      • 1️⃣Connect AssignmentOS
      • 2️⃣Add Assignment
      • 3️⃣Access Assignment
        • As a Lecturer/TA
        • As a Student
    • Blackboard
    • Canvas
      • 1️⃣Connect AssignmentOS
      • 2️⃣Add Assignment
      • 3️⃣Access Assignment
        • As a Lecturer/TA
        • As Student
    • Brightspace
    • Schoology
  • 🔐Plagiarism Checker
    • Plagiarism Checker
  • 📊Analytics
    • Course Level
    • Assignment Level
  • ⚙️API
    • Workflow
    • Authentication
    • Endpoints
      • Load Assignments Endpoint
      • Start Assignment Endpoint
      • Load Assignment Instance Endpoint
    • Error Responses
  • ❓FAQ
    • Can I edit an assignment after I send it?
Powered by GitBook
On this page

Was this helpful?

  1. Automated Grading

Automated Test-Suite Scoring

PreviousDefine Grading CriteriaNextHidden Tests

Last updated 1 year ago

Was this helpful?

AssignmentOS supports automated test-suite scoring in all of our supported languages. AssignmentOS test cases are implemented in code using testing libraries (such as JUnit, XUnit, etc.), which opens up an abundance of possibilities of what you can test for in a student's submission. Object equality, integer comparison (less than, greater than, etc.), proper exception handling, the sort order of lists, etc., are all possible. When creating a new custom assignment, you can set the number of required passing unit tests. This is the minimum number of test cases (either unit tests or integration tests) a student's submission must pass for us to mark the student as having passed the assignment. We also provide the option to include the passing test cases that were written by the student when checking did the total number of passing test cases equal or exceed the require passing test case number.

Note that by default, all test files you add are immutable, meaning that they cannot be edited by the student. This prevents the scenario whereby the student changes all the asserts in your unit/integration tests to pass (e.g. assert(true == true)), resulting in AssignmentOS marking those test cases as passing and thus generating an inaccurate score for the student. If you want to allow the student to modify existing test files, you can tick the Unit test modifiable box when creating a new/editing an assignment:

AssignmentOS tip: If your assignment's test files are immutable (i.e. if the "Unit tests modifiable" field is not checked), it's helpful to add a note to theREADMEin your assignment stating the tests are immutable and that if the student wants to add their own unit tests, they need to add these in a separate unit/integration test file(s).

🤖