Skip to content
♨️ Java grading middleware package for Gradescope.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Barista is a grading middleware package for Java Gradescope assignments. It is meant to make the development and maintenance of programming assignments easier for courses using Java. How easy is it?

import com.github.drewsdav.barista.TestCase;
import com.github.drewsdav.barista.TestSuite;

public class HelloWorldTests {

  @TestCase(name = "Hello test", points = 50.0)
  public void testHello() {
    // Test code here
  @TestCase(name = "Goodbye test", points = 50.0)
  public void testGoodbye() {
    // Test code here


That's a test suite written using Barista. Pretty simple, right? Best part, just run the RunTests.main() method to run all @TestSuite classes and automatically print the results in JSON.

Want more customization? Feel free to make your own test runner and create a new GradescopeListener object to run the tests.

Barista is built off of Tim Kutcher's JGrade, so there is even more customization to be had if you'd like to use some of JGrade's more advanced features.


Download the latest release and add it to your project.


You can either refer to the Javadoc comments in the code using your IDE, or you can read the Wiki.


Pull requests/issues are always welcome.


Licensed under MIT License.

You can’t perform that action at this time.