Manually starting test runΒΆ

When you use AMD (Asynchronous Module Loading) systems, or otherwise need to manually specify when your system is ready to run tests, you can easily disable auto running of tests and manually start the test run. Normally, Buster.JS starts running tests when the browser has finished loading the page. Since AMD is a manual module loader that Buster.JS can’t automatically be aware of, you are required to manually tell Buster.JS when you’re good to go.

Add autoRun: false to your config file:

var config = module.exports;

config["My tests"] = {
    autoRun: false,
    sources: ["../lib/**/*.js"],
    tests: ["**/*-test.js", "run.js"]
}

we added the file run.js to the tests group. In this file, call buster.run() to start the test run:

// App specific notification of when your app is ready to be tested
myApp.onReady = function () {
    buster.run();
};

You’re of course free to call buster.run() anywhere you want, the only important thing is that it gets called when you load your tests, and when it gets called your application is ready to get tested.

If you use the buster-amd extension, it will do this automatically for you and you do not need to set { autoRun: false } or call buster.run().