Angular での単体テスト、E2E テスト、バックエンド無しの開発について

Jasmine による単体テスト

Karma (テストランナー) によるテスト実行の自動化

Jasmine 単体でもブラウザからテスト実行できるが、わざわざアクセスして確認するのが面倒な場合は Karma を使う。 コマンドからテスト実行できたりするので CI との相性が良い。

ngMock による疑似バックエンド処理

まだバックエンドが用意できていなかったり、AP サーバ立ち上げるより nginx などの Web サーバで静的ファイルだけ配信して開発を進めたいという場合。 GET だけなら JSON ファイルも Web サーバで配信させればいいですが、POST や PUT や DELETE となるとそうはいきません。 そういう場合に JSON Server というのもあるようですが、Angular だけで完結する方法として ngMock を使う方法があります。

Protractor による E2E テスト

Protractor は Selenium WebDriverJSベースの E2E テストフレームワーク

全体を通した話

それぞれの技術を導入した時の効果などについてまとまってる記事。