2010-12-06 8 views
10

jsunitとjcoverageのデモを見ていたhere)カバレッジレポートのリンクをクリックしてください。jscoverage自動テストによるジャスミン

JasmineとJSCoverageに類似したことがあったのでしょうか?私はどのように進むべきかについて少し不明です。

[編集] 私はジャスミン記者と何かできることがあるかと思います。 My Jasmineの "hello world"の例では、TrivialReporterを参照しています。たぶんこれは延長できますか?

[編集] 私はジャスミンとjs-test-runnerを結んでいます。今私はカバレッジを得る方法を考えることができますか?

答えて

4

ルビープロジェクトで作業していて、jasmine-gem経由でjasmineを使用している場合は、jscoverageサポート[1]を追加するパッチがあります。

あなたはバンドラを使用している場合、あなたはGemfileで次のコマンドを使用して、ジャスミンのこのバージョンを使用することができます。

gem 'jasmine', 
    :git  => 'git://github.com/hjdivad/jasmine-gem', 
    :submodules => true, 
    :branch  => 'jscoverage' 

あなたがjscoverageをダウンロードし、それはあなたの$PATHであることを確認します。

あなたはその後、ジャスミン、宝石の中に、[2]それを得るために、これはあなたのために働く場合は、プルリクエストに応じて発言することをお勧めします jasmine.yml

coverage: 
    enabled: true 
    encoding: utf-8 
    tmp_dir: tmp 
    report_dir: public/coverage 
    skip_paths: 
    - public/javascripts/vendor 

に以下を追加したり、いくつかのバリエーションができ

適切。

+1

ルビープロジェクトで作業していない場合は、プルリクエストの2つのコミットを見て、スタンドアロンのjsプロジェクトに必要なものを抽出できるはずです。 1. jscoverage.jsをコピーし、ヘルパーとして追加します。テストを実行するときi。 jscoverageを実行してJavaScriptをインストルメントし、インストゥルメントされたファイルをいくつかのディレクトリに配置します。 ii。 jasmineをこのディレクトリに対して実行させます。iii。テストが完了したら、 'jasmine.coverageReport()'の結果を 'jscoverage.json'として保存します。iv。生成された 'jscoverage.js'を修正し、一番下に' jscoverage_isReport = true; 'を追加します。 – hjdivad

+0

私は行って、このプルリクエストが受け入れられるように嘆願を追加しました... –

1

あなたはジャスミン・宝石を使用していない、またはカバレッジを確認するために、サーバーを実行する必要がしたくない場合は、I jscoverageとjasmineを組み合わせた宝石を書きました。 CIビルドでレーキタスクとして実行できます。それは、ここで見つけることができます

https://github.com/firstbanco/jasmine-coverage

は、それをインストールし、その後、ちょうどあなたが完了している

bundle exec rake jasmine:coverage 

を実行します。

編集:ジャスミンカバレッジの著者として、私はよりよい代替についてあなたに伝えるべき義務を感じています:teaspoon。より多くの設定が必要ですが、Chromeデバッガを使用できるようにブラウザでの実行も可能です。