Angular での単体テスト、E2E テスト、バックエンド無しの開発について
Jasmine による単体テスト
Karma (テストランナー) によるテスト実行の自動化
Jasmine 単体でもブラウザからテスト実行できるが、わざわざアクセスして確認するのが面倒な場合は Karma を使う。 コマンドからテスト実行できたりするので CI との相性が良い。
- jasmineのテストをKarmaで実行する - rochefort's blog
- 【npm + Karma + Jasmine】JavaScriptの単体テスト環境を構築する - Qiita
- AngularJSのプロダクトコードをJenkinsで運用する - Qiita
ngMock による疑似バックエンド処理
まだバックエンドが用意できていなかったり、AP サーバ立ち上げるより nginx などの Web サーバで静的ファイルだけ配信して開発を進めたいという場合。 GET だけなら JSON ファイルも Web サーバで配信させればいいですが、POST や PUT や DELETE となるとそうはいきません。 そういう場合に JSON Server というのもあるようですが、Angular だけで完結する方法として ngMock を使う方法があります。
Protractor による E2E テスト
Protractor は Selenium WebDriverJSベースの E2E テストフレームワーク。
全体を通した話
それぞれの技術を導入した時の効果などについてまとまってる記事。