AngularJS アプリのエンド ツー エンド テストがあり、Karma をテスト ランナーとして使用しています。現在、Karma 構成には次のものが含まれています。
config.proxies = {
'/': 'http://localhost:9292/'
};
単一の静的 AngularJS HTML ファイルを提供する単純な Rack アプリを個別に起動する必要があります。ロードのように、静的ファイルをテストするエンドツーエンドのテストが必要ですfile:///Users/sarah/my-app/index.html
。プロキシを設定せずにテストを実行しようとしましたが、呼び出しが「要素と一致しなかった」browser().navigateTo 'index.html'
ため、テストはすべて失敗します。element
index.html ページが読み込まれていないようです。
また、テストでプロキシを設定してから実行しようと'/': 'file:///Users/sarah/my-app/
しましbrowser().navigateTo '/index.html'
たが、「options.hostおよびoptions.portまたはoptions.targetが必要です」というエラーで失敗しました。ポートを 80 に設定できると思いますが、ホストがありません。それがポイントです。
これに関する私の目標は、AngularJS 単体テストが現在実行されているSemaphoreで、エンドツーエンドのテストを自動的に実行することです。単体テストは、アプリのインスタンスにアクセスする必要がないため、異なります。
私がやりたいことは可能ですか?そうでない場合、セマフォがアクセスできるパブリック サーバーでアプリをホストせずに、セマフォで AngularJS アプリの単体テストとエンド ツー エンド テストの両方を実行する方法はありますか?