Testing should always be a major part of any development project. Angular has been built from the beginning to be testable. It has clear separation of concerns; for example, you do not need to build a full DOM to test a controller. Angular also uses dependency injection everywhere, which makes mocking up objects very easy.
Jasmine and Karma are two tools that allow you to quickly and easily test your Angular code.
This is the actual unit testing library that we will use. Jasmine is a behavior-driven testing framework and is really easy to write.
Karma is the test runner that will watch your files and automatically kick off your tests. It runs on Node.js, so you must have it installed. You can then install Karma with npm
:
install karma-jasmine
Karma can watch your test files and rerun them whenever any of the files change. You can also debug tests in the browser if there are any issues. It is a great complement to Jasmine, and Google recommends...