Writing Mocha test specifications
With practically everything else in place, we finally turn to writing test specifications. Mocha BDD specifications are declared using the it()
function with the following function signature:
it(description, callback);
The description string, by convention, is a statement of the expected behavior under test, and the callback function executes the tests. For example, assuming we have an empty this.notes
collection variable, a test of the default values in App.Collections.Notes
can be as simple as the following:
it("has default values", function () { expect(this.notes).to.be.ok; expect(this.notes).to.have.length(0); });
Asynchronous behavior in tests
Although basic test specifications are quite simple, flow control complications arise when testing asynchronous application code. Given that the Backbone.js application's behavior is quite often asynchronous/event-driven, we need to have a solid and straightforward test approach.
Fortunately, Mocha provides an...