次のように Yeoman を使用して Karma および karma-jasmine をインストールしました:
$ npm install -g generator-angular
$ mkdir myapp && cd $_
$ yo angular
myapp/bower.json
に Jasmine がリストされていないことを考えると、 Bower インストールされたフロントエンドパッケージの1つとしてmyapp/karma.conf.js
がリストされています Jasmine =デフォルトのテストフレームワークとして、grunt test
コマンドが機能することに驚きました。 (Gruntfile.js
、bower.json
、およびkarma.conf.js
ファイルはすべて、yo angular
足場プロセスの一部として作成されました。)
myapp/node_modules
パッケージを詳しく調べたところ、 karma-jasmine が Jasmine の個別のインストールを指していないことに気付きました。 karma-jasmine プラグインは実際に Jasmine をインストールします:
▼ myapp/
▼ karma_jasmine/
▼ lib/
adapter.js
index.js
jasmine.js
karma-jasmine は、「 (Jasmine テストフレームワーク用のadapter」であると述べています。 karma-jasmine では Jasmine を個別にインストールする必要がないことに少し驚きました。
使用されるさまざまなパッケージバージョンは次のとおりです。
myapp/package.json
の内容ごとに「〜0.10.8」myapp/package.json
の内容ごとに「〜0.1.4」npm list -g | grep yo
コマンドの結果ごとに「1.0.6」次のSpecを実行すると、使用しているジャスミンのバージョンを確認できます。
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行目)
アップグレードが可能なようにプラグインを変更して、プルリクエストをkarmaに送信することができます( http://karma-runner.github.io/0.10/dev/contributing.html を参照)
Karma-jasmineのジャスミンバージョンに固執し、パッケージ全体を更新することをお勧めします。次のコマンドを使用して、インストールされているすべてのパッケージのバージョンを取得できます。
npm ls
インストールされているグローバルパッケージのバージョンを取得するには:
npm ls -g
CDNで入手可能な最新バージョンを表示するには、次を使用します。
npm view karma-jasmine version
更新する前に、次を使用してCDNですべてのバージョンを表示できます。
npm view karma-jasmine versions
特定のバージョンをインストールするには:
npm install karma-jasmine@~0.2.2
(0.2.2は入手可能な最新のものです)。