Help us understand the problem. What is going on with this article?

JavascriptのユニットテストをJasmine+Karmaでやってみる

More than 3 years have passed since last update.

Javascriptのテストフレームワークの一つであるJasmineを使うにあたって、以下の要望を満たせる方法が無いか模索した結果、なんとか動作するところまで行き着いたので整理します。

要望

・テスト用のHTMLを書きたくない
・テストコードに余計なコードを書きたくない
・コマンドラインで実行したい

やったこと


インストール
Jasmineのインストール
npm install -g jasmine
Karmaおよび関連モジュールのインストール

当初、Karmaは-gオプションで入れようとしていましたが、すでに使っているnodeのバージョンと合わなかったせいかうまく入らなかったのと、Karmaのサイトではローカルインストールを推奨していたので--save-devでインストールしました。

npm install karma --save-dev

npm install karma-jasmine --save-dev

npm install karma-chrome-launcher --save-dev
Karmaの設定
設定ファイルの生成

コンソールで以下を実行し、コンソールの指示に従っていくと最終的に設定ファイルが生成されます。

karma init  
設定ファイルの編集

同ファイル内のfilesプロパティにテストで使用するファイル名を追加します。

files: [
    'js/test1.js',
    'js/test2.js'
],

実行

実行方法は、以下のようにkarmaに設定ファイルを渡します。

./node_modules/karma/bin/karma start ./karma.conf.js

関連リンク

npm karma
KARMA
KARMA installation

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away