2013-06-10 13 views
6

エンドツーエンドテストを実行しようとしているときに表示されるメッセージは次のとおりです。 AngularJSチュートリアルhttp://docs.angularjs.org/tutorial/step_05 MS Windows 8 Professional。このテストをうまく実行させるにはどうすればよいですか?node.js/karma/end-to-endテスト:/app/index.htmlをプロキシできませんでした(エラー:ECONNREFUSEDに接続)

[2013-06-10 17:27:54.100] [WARN] config - "/" is proxied, you should probably change urlRoot to avoid conflicts 
INFO [karma]: Karma server started at http://localhost:9876/ 
INFO [launcher]: <<< Starting browser Chrome 
INFO [launcher]: --- Starting browser Chrome 
INFO [Chrome 27.0 (Windows)]: Connected on socket id E20UigDmDqhk3jaRRYAP 
WARN [proxy]: failed to proxy /app/index.html (Error: connect ECONNREFUSED) 

ECONNREFUSED while running end-to-end test using Karma node.js package on MS Windows 8 Professional

答えて

12

あなたが見ているエラーは、Webサーバを開始していないことを示しています。 ./scripts/e2e-test.shを使用してe2eテストを実行しているので、ウェブサーバにlocalhost:8000からアプリケーションを提供させる必要があり、docrootの必要性はapp-folderではなく-phonecatフォルダを指している必要があります。これは単に./scripts/web-server.jsを実行することで行うことができます(step-00を参照)

e2eテストを実行するもう1つの方法があります。あなただけの訪問することができます

http://localhost:8000/test/e2e/runner.html 
+0

ありがとうございます、今はうまくいきます。 BTW、私はe2e-test.batを使用しています。MS Windowsのバッチファイルではありません。e2e-test.sh – ShamilS

+0

何かが続いています。エラーが発生したときに私のノードのWebサーバーが動作していましたが、私の場合、テストはとにかく完了しました(失敗しません)。私はノードサーバーを再起動しました。その場合、e2eテストを繰り返し、同じ結果を得ました。警告とSUCCESSテストの完了です。 localhost:8000/testもうまく動作します。 e2eテストが実行されているので、OKですが、警告を取り除くとよいでしょう。何かが間違っています。 –

+0

configフォルダ内のKarma-e2e.conf.jsファイルは、http:// localhost:8000 /にあるプロキシとしてルートを宣言します。 –

0

はい、Webサーバーが実行されていない問題です。ローカルのものを実行するのが最も簡単です。

テストを実行できるように(このテンプレートから)プロジェクトをセットアップする方法の詳細については、角度シード(テンプレートプロジェクト)https://github.com/angular/angular-seedを参照してください。基本的に

  • gitのクローン
    • https://github.com/angular/angular-seed私は「角度シード・テンプレート・プロジェクト」としてクローン化し、使用することを私自身のプロジェクトのためのテンプレートとして。
    • 私は最新作をダウンさせると、その最新の依存関係に引っ張ってnpm updateを実行するには、この上のgit pull
    • 彼らは実際にあなたが簡単に git pullでプロジェクトを更新するためにできるようになるのgit-ハブの角度-種子をフォークすると言う
    • 最新の変更点(How do I merge a parent fork?)。しかし、私が理解することは、githubプロジェクトを一度しかフォークすることができないということです。これは、angle-seedをテンプレートとして使用することを排除します。明らかに私はこれをより詳細に見る必要があります。ユニットを実行するための
  • cd <the-project>
  • npm testはベースとして、現在-dirののアプリでWebサーバーを起動する
  • npm startをテストします。これはデフォルトでプロセスとして実行されないので、コマンドラインコマンドを実行する別の端末で実行するか、プロセスとして起動します(nodeは後でkillする必要があります)。npm start &
  • npm run update-webdriverアジャイル・シード指示に従って、このようにそれをやって統合テスト

をエンドツーエンドを実行するために、セレン、より

  • npm run protractorをインストールすると、このエラーを回避します。

  • 関連する問題