さて、テストを思い出す時が来ました(もちろん、それらについてもっと早く考えなければなりませんでしたが、決して遅くない方が良いです)。
一般的に、その前に、バックエンド、特に
django
を含むテストの作成をすでに試みていました。 それから、ブラウザウィンドウではなくコンソールからテストを実行するのは素晴らしいことだと思いました。 まあ、最近から私は積極的に
angular
の開発を追ってきましたので、なぜ彼らがそれを行うのか見てはいけません。 さらに、どういうわけか、目の前から、コンソールでテストが実行されている瞬間を捉えました。 さらに、テストの複雑さをゼロから理解したくなかったので、テスト付きの既成のプロジェクトを取り、それがどのように行われたかを確認し、テストを実行することにしました。 私の選択は、 angular-uiか、むしろそのui-utilsモジュールの1つです。
ダウンロードして、ルートに移動し、テストフォルダーとその中のkarma.conf.jsファイルを確認します
はい、そしてreadme自体には、テストがこの
karma start —browsers ….
ように実行されると書かれています
karma start —browsers ….
Google karmajsで必要なものを見つけるkarma-runner.github.io/0.8/index.html
テスト用ユーティリティ。 それで彼女は何ができますか?
- コンソールからテストを実行する
- 保存するたびにすべてのテストを自動的に実行します!!!
- ジャスミン、qunitなどのさまざまなフレームワークでテストを作成する機能
- 一度に複数のブラウザーでテストを実行します。 (fantomjsなどの仮想のものを含む)。
一般に、私はすでにそれに取り組む十分な機会がありました。 しかし、
jenkins
との統合など、私がまだ
jenkins
していない他のものがあり
jenkins
私が言ったように、私は最初に完成したプロジェクトを試すことにしました。 一般的に、私の行動:
cd ui-utils sudo apt-get install nodejs # sudo npm install karma -g # , sudo npm install bower # ui-utils npm install bower install
それだけです。
ターミナルで実行します。
karma start --brower=Chrome test/karma.conf.js --auto-watch
その後、Chromeブラウザを起動します。ここには、「Karma-connected」という碑文が表示されます。
ターミナルに戻ると、いくつかのテストが開始され、すべてが合格したことがわかります。
ここで、テストファイルのいずれかに入ります。これらは、modules / modulename / test / testnameSpec.jsにあります。
どのセクションでも
it('...', function() {…..
そして追加
expect(2).toBe(3); # jasmin,
保存して、コンソールを見て、このようなものを確認してください。
............................................................. Chrome 28.0 (Linux) uiMask initialization should not not happen if the mask is undefined or invalid FAILED Expected 2 to be 3. Error: Expected 2 to be 3. at null.<anonymous> (/home/mn/Documents/www/temp/ui-utils/modules/mask/test/maskSpec.js:25:17) .......................................................................... Chrome 28.0 (Linux): Executed 136 of 136 (1 FAILED) (1.016 secs / 0.642 secs)
テストに失敗しました。
ご覧のとおり、テストは保存されると自動的に実行されます。
2台のモニターを使用すると特に便利です。 1つ目ではコードを記述し、2つ目では端末をハングアップし、すぐに現在のステータスを表示します。 場合によっては、ブラウザをまったく見る必要はありません。
テストは保存されるたびに実行されるため、ちらつき、場合によっては邪魔になります。 この場合、次のコマンドを使用できます
karma run
すなわち、最初に実行する必要があります
karma start test/karma.konf.js —no-auto-wath
そして、別のターミナルで実行します
karma run
したがって、テストは手動で開始されます。
もちろん、私はカルマのすべての特徴とはほど遠いことを述べてきました。 むしろ、この投稿では、この興味深いユーティリティに注意を引きたいと思いました。 そのため、 サイトにアクセスして自分の目で確かめてください。
PS
karma
もちろん、
angular
テストだけでなく、一般にjsの他のクライアントコードにも使用できます。 現在のプロジェクトでは角度を使用していませんが、カルマでのテストは非常に便利です。
PS以前、このユーティリティは
testacular
と呼ばれてい
testacular
testacular