In the following thesis I will plan and prototype the testing environment of an AngularJS application.
I describe the basic concepts of software testing, and introduce the testing levels of static testing, unit testing, integration testing, and graphical testing.
An AngularJS application will be introduced, which will be the system under test. Along the testing, I’ll give an overview of the available testing tools for the application After validating and comparing these tools, I choose the ideal tools for testing. The main technologies I am choosing are Jasmine, Karma, and Protractor.
After selecting the testing tools. I am designing and implementing example tests to showcase how to test the functionality of AngularJS. These tests will not provide an extensive coverage of the application, but showcase tthe testability of AngularJS technology. Test coverage is measured on the test cases. Automated graphical tests, which will run in the browser, will also be designed and implemented.
A static analysis tool will also be introduced on the project. The ruleset will be finetuned to the needs of the project