node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป



Asynchronous Node Test Runner

Build Status


We had the need for a runner which runs tests asynchronously.


npm install antr


Just require the module and you're away!

var Antr = require('antr');

var run = new Antr({
	dirname: __dirname,
	filter: /test([^\/w]+?)\.js$/

You can pass a callback in as the second parameter if you like, which will callback with err, stats. If you don't give antr a callback it will quit the process for you.

var Antr = require('antr');

var run = new Antr({
	dirname: __dirname,
	filter: /test([^\/w]+?)\.js$/
}, function(err, stats){
	console.log('Tests failed: ', stats.failed);

Stats contains

  • passed
  • failed
  • total
  • failRate - percentage of failed tests
  • failedTests - array of file paths
  • passedTests - array of file paths
  • timeTaken - format hh:mm:ss



  • filter Regex to filter files to run


  • dirname Directory to find files in - defaults to . This can be an array of directories
  • listFiles Print out the array of files which will be run - defaults to false
  • timeout A timeout, in seconds, for each test - defaults to 30
  • batchSize Maximum amount of concurrent tests to run - defaults to 8
  • progressBar Option to display a progress bar - defaults to true
  • succinct Option to limit the amount of output on stdout/stderr - defaults to false
  • sort Sort function (to behave like a [].sort compareFunction), in case you need to customise the order in which the discovered tests are run.

npm Maintainers