I’ve used AngularJS for a few months, but I have no knowledge when it comes to testing AngularJS apps. I have a subscription to PluralSight.com and wanted to go through their online video training course for AngularJS. Specifically with this course I want to learn how to use Karma to do testing.
I’m usually extremely happy with PluralSight.com course, but in the beginning of this course I was somewhat disappointed. In Section 7 (“Angular Seed”) new technologies were introduced. The author introduced Angular-Seed, Node.js and Karma. I’ve worked with Node.js, but there are probably many people who have never used it. I believe the author took for granted that the student knew Node.js. For those who have never used Node.js this could be an obstacle.
When I started the course I didn’t have Node.js installed. I installed Node.js and things didn’t work as intended. I couldn’t run tests in Node.js because Karma was not installed. Once I installed Karma, Chrome wouldn’t launch in the tests.
With all the issues I was having, I wondered if others were having the same problems. If others were having similar issues, were they discouraged and not continuing with the course. So I decided to create this blog post to help others to get stared with AngularJS, Angular-Seed, Node.js and Karma.
Here are my assumptions:
- You are a windows developer
- Google Chrome browser is installed
- You will use the Windows Command Prompt instead of Bash
- You have little or no knowledge of Node.js
- You have little or no knowledge of Karma
- You will use Node.js as the web server. I will step you through this.
- You have access to and IDE. Visual Studio will be fine. NotePad++ would also probably work. I use JetBrains WebStorm. JetBrains has a free 30 day trial for WebStorm.
Here are the high level step we will follow:
- Download and install Angular-Seed
- Download and install JetBrains WebStorm (Optional)
- Download and install Node.js
- Confirm Node.js is installed
- Run Karma Unit Tests – will fail because Karma is not installed
- Install Karma
- Run Karma Unit Tests again – Will fail because Chrome will not start
- Add System Variable to Windows
- Confirm System Variable Were Added
- Run Unit Tests again – should succeed
- Confirm that Units are being tracked by Karma
- Start Web Server by using Node.js