2016-10-02 18 views
0

まず、この質問はちょっとばかげているかもしれませんが、残念です。AngularJSとKarma/Jasmineの単体テスト - フォルダ構造と生産

私は最近カルマ/ジャスミンでAngularJSをやって単体テストを始めました。それは素晴らしいですし、私はそれを楽しむが、何か私の心に来た。

ありAngularJSのための非常に一般的な構造は、公式のシードプロジェクトのようにthesedaysをアプリされています https://github.com/angular/angular-seed

今、この1つはまた、ユニットテストを含み、すべてのテストファイルは次の自分の「ネイティブ」な角度JSファイルに位置しています(したがって、 "home.js"コントローラファイルの場合、 "home_test.js"があります)。完璧な意味を持ち、テストを書いてテストファイルを見つけるのがずっと簡単です。

しかし、AngularJSプロジェクトをサーバー上で使用する場合、テストファイルも利用できます。それは一般的な慣習ですか?それは悪いことですか?

角度の「app」フォルダ(ユーザーに提供される)の隣に「tests」フォルダがあり、フォルダはそのアプリケーションのフォルダ構造を模倣し、テストファイルがそこに配置されていると思います。しかし何らかの理由で私はGitHubの種とプロジェクトでそれを見ることはできません。

ここでいくつかの入力をしたいです。私も何かが欠けているかもしれません...

答えて

1

最初に、開発モード(ローカル)では、急なアプリケーションの開発に役立つ、粗末な、巨根または別のビルドシステムを使用する必要があります。

これらのツールを使用するときは、特定のファイルを提供しないように指示します。 このため、テストに拡張機能(ex:foobar.controller.spec.js)を付ける必要があります。これによりto tell gulp to ignore .spec.js extensionsが許可され、埋め込まれません。

プロダクションモードでは、ファイルを個別に処理することはありません。ファイルを1つのapp.jsファイルに連結します。同様に、そのファイルをビルドするときに、ビルドシステムにテストファイルをスキップするよう指示します。

だから、あなたのテストをアプリに入れておき、拡張機能を与えてビルドシステムにそれらを無視するように指示してください。

+0

まさに私が思ったもの!ここでの反応を待っている間、私はすでに私のものを細かくするためにぞっとするように見えました。ありがとうございます。 –