Unit Testing in Node.js
Intro
This is a quick example project to show how a test environment can be setup in Node.js
It includes the following
- Mocha - testing framework
- Chai - assertion library
- Istanbul - coverage testing
- SinonJs - stubs and splices for mocking data
The following online tools are used to monitor results
- Travis CI - Continuous Integration
- David DM - Dependency Management
- Codacy - Automated Code Quality Reviews
- Inch CI - Documentation Reviews
The Project
The project is a very simple script that pulls current weather data from OpenWeatherMap for your location, it then analyses it and lists which items (umbrella, icecream, jumper...) you will need for the current weather.
To Install
- Navigate into your working directory, run the following commands:
git clone https://github.com/Lissy93/quick-example-of-testing-in-nodejs.git
to clone repocd quick-example-of-testing-in-nodejs
to navigate into projectnpm install
to install the dependencies
To run the project
npm start
will run the main file (app.js) and display resultsnode app --location Newcastle
will run app.js for a custom location, e.g. Newcastlenpm test
will run the Mocha tests, output results and generate reportsnpm run cover
will run the Istanbul coverage tests and output results and generate reports
Screenshots
Command Line Output: Tests Passing
Web Report: Some Tests Failing
Web Report: All Tests Passing