Custom auto-grading in zyLabs

Output tests
  • Decide if tests will grade student use of case or whitespace.
  • Compare exact output or use “starts with”, “ends with”, or “contains” .
  • Control which parts of the test students see .
  • Write your own regular expression.
Unit tests

zyLabs have an easy-to-use unit test built in, as well as a variety of standard unit test frameworks, including:

  • zyLabs have an easy-to-use unit test built in, as well as a variety of statdard unit test frameworks, including:
  • J Unit testing
  • Python unit testing
  • Gtest (Google Test)
Manual Grading

Manual grading allows instructors to add or deduct points based on specific criteria. 

  • Create cases to add points or deduct points.
  • Manual grading shows at the bottom of the student work.

.

Custom bash and shell scripts
  • Create custom feedback.
  • Give partial credit.
  • Detect and grade more advanced elements of code, such as memory leaks.

Customizing zyLabs

Cloning zyBooks maintained Labs

You can clone and customize any zyBooks maintained lab in your book. You can change:

  • The title
  • Instructions
  • Template/boilerplate code
  • Auto-grading
  • Other settings
Choosing different languages and IDEs

You can select from more than 50 languages and several standard IDEs including:

  • VS Code
  • Jupyter Notebook
  • IntilliJ
  • R Studio
Pair/Group programming

Pair/group programming in zyLabs allows for collaborative learning and project work. Instructors can:

  • Set up with any advanced zyLab, including your own custom labs 
  • View each student’s contribution and the history of the project.
  • Change student groups

Academic Integrity/Reporting Tools

Code playback
  • See how student code evolves character-by-character.
  • Find large paste and delete events. 
Student behavior insights
  • View a dashboard of averages of student behavior metrics.
  • Flag outlier students for time, pasted code, and number of submissions.
  • Quickly go to student code and see their code history, character by character.
Similarity detection
  • Detect students with similar code.
  • Change the threshold for detection. 
  • Export code for your records.
Student Activity

The student activity section provides a quick visual of student coding efforts with our coding trail, along with the ability to see their exact work from any point of the development process.

  • Time spent on the lab 
  • “Explore” runs 
  • Each submission for grading 
  • Dates and days of the week when work was done 

Other zyBooks Tips

Using zyLabs for virtual office hours

Collaborate in real-time in the IDE with students

Comment on student work

View student code, character-for-character, including past efforts

Creating a sandbox for in-class practice

Creating a sandbox provides a non-graded space for students to practice coding. Instructors can: 

  • Create a non-graded space for students to practice in class or lab 
  • Add a piece of template code, or leave the coding space blank.
  • Move sandbox spaces to any section of the zyBook.
Creating assessments with Advanced zyLabs and custom sections
  • Set duration limits
  • Set availability windows
  • Include a passcode
  • Set submission limits
  • Edit test-bench feedback to match your assessment