web-dev-qa-db-ja.com

KarmaをChromeで動作させる方法

コマンドラインのみのUbuntu 11.04(GNU/Linux 2.6.35.4-rscloud x86_64)があり、テストにKarmaを使用する Angular Phonecat tutorial を使用しています。 Karmaブラウザの設定ページ はChromeランチャーは「デフォルトでKarmaに同梱されている」と言います。

しかし、それは私のために働いていません。 これはkarma.conf.jsです 。以下は出力です。

 $ ./scripts/test.sh

Starting Karma Server (http://karma-runner.github.io)
-------------------------------------------------------------------
INFO [karma]: Karma v0.10.4 server started at http://localhost:9876/
INFO [launcher]: Starting browser Chrome
ERROR [launcher]: Cannot start Chrome
        Can not find the binary google-chrome
        Please set env variable CHROME_BIN

この答え は、クロムが必要だと指摘しています。

Chrome Ubuntuに このガイド を "コマンドラインを使用して64ビットバージョンをダウンロード"でインストールしようとしました。すべてがSudo apt-get -f installは、91.189.91.15や91.189.92。など、ubuntu IPアドレスからの多くの「フェッチに失敗しました」で終了しました。 「バイナリgoogle-chromeが見つかりません」という/ usr/bin/googlesomething *がなくても、個別のテストレベルで「Chromeを起動できません」が表示されます。次に、エラーを修正しようとしているときに、/ usr/bin/googlesomethingを削除しました。

現在、私はこれらのnode_modulesを持っています:

angular-phonecat/node_modules$ ls
karma                      karma-html2js-preprocessor  karma-requirejs
karma-chrome-launcher      karma-jasmine               karma-script-launcher
karma-coffee-preprocessor  karma-junit-reporter
karma-firefox-launcher     karma-phantomjs-launcher

Q 1:私のマシンにはコマンドラインアクセスのみがあり、GUIはないので、他のKarmaランチャーであるPhantomJSはChrome/Chromiumよりも優れていますか?

Q 2:それでもChrome/Chromiumを使用する必要がある場合、ChromeまたはChromium?

Q 3:KarmaがAngularアプリで動作するようにするには、google-chromeまたはchromiumを取得するために何が必要なのか正確に知っていますか?

18
Alice

ルートヴィヒの答えを求める人のための、そして将来の自分自身の参照のための3番目のポイントを拡張します...

あなたがしなければならない最初のことはどこを見つけることですchromium-browserがインストールされています。実行:

which chromium-browser

これにより、実行可能ファイルへのパスが返されます。このパスは次のようになります。

/usr/bin/chromium-browser

次に、単純にパスを設定します。

export CHROME_BIN=/usr/bin/chromium-browser

これでKarmaは、テストを実行するために必要なブラウザーを見つけることができます(グラフィカルインターフェースを使用することを決定した場合)。

26
Daniel Bidulock
  1. コマンドラインインターフェイスしかない場合は、PhantomJSが唯一の選択肢です。
  2. Linux(少なくとも12.04以降)では、クロムが代わりになります。ただし、グラフィカルUIがない場合はインストールできません。
  3. 手がかりは「環境変数CHROME_BINを設定してください」です。 Karmaはgoogle-chromeというファイルを実行しようとしましたが、存在しません。 chromeの実行可能ファイルの名前はOSによって異なります。したがって、CHROME_BINと呼ばれる環境変数を設定する必要があります。これには、chrome =実行可能。私のシステム(Linuxデスクトップ13.10)では、これはchromium-browserです。
9

ヨーマンジェネレーターアングル を使用してプロジェクトを設定したところ、chromeまたはphantomjsでカルマを操作できませんでした。

これは そのプロジェクトに固有の問題 であることがわかります。修正は、不足しているプラ​​グインをプロジェクトルートのpackage.jsonに追加するだけです。

1
turtlemonvh

私の解決策は、Linuxでwindwsのクロムにエイリアスを作成することです

alias launchchrome="\"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe\""

その後、そのエイリアスをLinux環境変数としてエクスポートします

export CHROME_BIN=launchchrome

これで完了です。ng testを実行すると、ウィンドウが表示されますchromeが使用されます!この場合はうまくいきました。この解決策で問題が発生した場合は、コメントを残してください。私の答え。

0
Gh111