Let's look at examples of the two most common interfaces for Mocha and Chai—BDD and TDD.
The Mocha BDD interface provides four main functional units:
before(): This is a setup that occurs once before all the tests within a suite are run. Mocha also provides a
beforeEach()function that runs before each test in a suite.
after(): This is a setup that occurs once after all tests in a suite are run, with the
afterEach()alternative that runs before each test.
describe(): This specifies a test suite and can be nested within other
it(): This defines a single test function containing one or more assertions.
Chai's BDD style uses
should to make dot-notation assertion ...