35

質問

バックグラウンド

次のように、 Yeomanを使用してKarmakarma-jasmineをインストールしました。

$ npm install -g generator-angular
$ mkdir myapp && cd $_
$ yo angular

Jasmineは、 Bowerがインストールしたフロントエンド パッケージの 1 つとしてmyapp/bower.jsonリストされていませんでしたが、 Jasmineがデフォルトのテスト フレームワークとしてリストされていたことを考えると、コマンドが機能することに驚きました。( 、、およびファイルはすべて、スキャフォールディング プロセスの一部として作成されました。)myapp/karma.conf.jsgrunt testGruntfile.jsbower.jsonkarma.conf.jsyo angular

myapp/node_modulesパッケージを詳しく調べたところ、 karma-jasmineがJasmineの個別のインストールを指していないことがわかりました。karma-jasmineプラグインは、実際に Jasmine をインストールします

▼ myapp/
  ▼ karma_jasmine/
    ▼ lib/
        adapter.js
        index.js
        jasmine.js

karma-jasmine が「 Jasmineテスト フレームワークのアダプター」であると述べていることを考えると、karma-jasmineJasmineを個別にインストールする必要がないことに少し驚きました。

パッケージのバージョン

使用されるさまざまなパッケージのバージョンは次のとおりです。

  • カルマmyapp/package.json:コンテンツごとに「~0.10.8」
  • karma-jasminemyapp/package.json :コンテンツごとに「~0.1.4」
  • Yeomannpm list -g | grep yo :コマンドの結果ごとに「1.0.6」
  • Jasmine : 不明ですが、いくつかの差分に基づいて、 Karma -jasmineにKarmaと連携するJasmineのカスタマイズされたバージョンが含まれているかどうか疑問に思っています。
4

2 に答える 2

30

次の Spec を実行すると、使用している jasmine のバージョンを知ることができます。

describe('Test to print out jasmine version', function() {
  it('prints jasmine version', function() {
    console.log('jasmine-version:');
    console.log(jasmine.version || (jasmine.getEnv().versionString && jasmine.getEnv().versionString()));
  });
});

次に、コンソールまたはブラウザーでカルマ出力を確認します。次のようになります。

LOG: 'jasmine-version:'
LOG: '2.3.4'

jasmine ライブラリは、すでにわかっているように jasmine-runner プラグインに含まれています。このファイルが読み込まれる正確な場所は、プラグインのソース コードで確認できます: https://github.com/karma-runner/karma-jasmine/blob/master/lib/index.js (7 行目)

プラグインを変更してアップグレードを可能にし、カルマにプル リクエストを送信することができます ( http://karma-runner.github.io/0.10/dev/contributing.htmlを参照) 。

于 2014-01-14T15:53:43.797 に答える