=====Установка Karma===== Для установки Karma вам потребуется: - Установить node.js - Далее через консоль node.js command promptследует выполнить команду - npminstall –g karma-cli - Следующий шаг –в консоли перейти в папку с проектом и выполнить команду - karma initkarma.config.js, далее последует ряд вопросов при установке : * Which testing frameworkdo you want to use?Jasmine * Use Require.js?No * Do you want to capture abrowser automatically?Chrome * What is the location of yoursource and test files?(angular.js, angular-mocks.js,*.js,tests/*.js) * Should any files beexcluded? * Do you want Karma towatch all the files and runthe tests on change?Yes - Для запуска тестов следует в консоли перейти в нужную вам папку и выполнить команду: karma start karma.config.js - Далее должно открыться окно браузера и в консоли появится информация о пройденных тестах. ====Использование Mock==== Mockобъекты в тестировании используются очень часто, основное их назначение содержать в себе некий функционал который необходим тесту для прохождения(например ряд методов для выполнения функционала метода описанного в тесте). Преимущество использования Mock перед использованием реального функционала является его изолированность от окружающего функционала, ведь если вы будете использовать реальный функционал и получите ошибку то вам не будет известно почему так произошло. Если же вы используете Mock то функционал который подвергается тестированию полностью изолирован от остального кода и позволяет точно определить причину ошибки в случае её появления. Например если вам нужно протестировать ряд CRUDфункций которые работают с AJAX, как это можно сделать не используя AJAX?Элементарно –поместить в Mockданные и методы которые будут отвечать на запросы CRUDфункционала.\\ \\ AngularJSуже содержит некий набор APIфункциональности, которая предоставляет возможность писать Unit тесты для приложений AngularJS, это некий модуль ngMocks, который можно загрузить с официального сайта и использовать вкачествеполноценного Mock’aдля написания Unitтестов.