Let’s say you wrote a middleware for Express which is compatible with both Express 3 and Express 4. You use Travis CI to ensure that your tests pass, even against multiple versions of Node.js. However, your tests won’t run against Express 3.

Using Judge, you can specify multiple “Judge cases” (a set of dependencies) to test your package against, so you can be sure that your Express middleware works with both Express 3 and Express 4.

Judge was heavily inspired by Appraisal which offers a similar solution for Ruby gems.

You can configure Travis CI to use Judge when running your tests. Simply add judge install $JUDGE_CASE --overwrite to your install process. Then specify every Judge case you want to test against as an environment variable.