Mocha Unit Tests with Hello World

This blog helps you get started with Mocha and also present steps and sample tests which can be used to get started.

Setup Mocha using NPM

For installing Mocha globally such that it can be from anywhere, execute following command:

npm install --global mocha

For installing with npm, you may be required to install Nodejs. npm is distributed with NodeJS which implies that downloading and installing NodeJS automatically installs npm on your computer. One can get appropriate version of NodeJS from following page, Download NodeJS. Details on npm can be found on this page, NPM.

Execute mocha command to make sure it is installed appropriately. Following is the screenshot of output as a result of execution of mocha command:

Mocha Command Execution

Figure 1. Mocha Command Execution

Write First Unit Tests with Mocha

The following steps represents the creation of unit test which will be run with Mocha.

  • Create a tests folder.
  • Make a test file within tests folder such as test.js. Put following code within test.js
    var assert = require('assert');
    describe('HelloWorld Module', function() {
      it('should return -1 when "Hello" is missing', function() {
        assert.equal(-1, "Hallo World".indexOf("Hello"));
      });
      it('should return 0 when sentence starts with Hello', function() {
        assert.equal(0, "Hello World, how are you?".indexOf("Hello"));
      });
    });
    
  • Run the tests using command such as following:
    mocha tests/test.js
    

Following is how the test results would look like:

Mocha Unit Tests Results

Mocha Unit Tests Results

Ajitesh Kumar
Follow me

Ajitesh Kumar

I have been recently working in the area of Data Science and Machine Learning / Deep Learning. In addition, I am also passionate about various different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia etc and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data etc. I would love to connect with you on Linkedin.
Posted in Javascript, Maintainability, Software Quality, Unit Testing. Tagged with .

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.