問題タブ [istanbul]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gruntjs - mocha テストで istanbul のインストルメント化されたコードを読み取って使用するにはどうすればよいですか?
テストに合格していても、レポーターを使用できるようにしたいのですがhtml-cov
、すべてのカバレッジ値が 0 です。
私はインストルメント化されたコードとテスト用の mocha を作成するためにイスタンブールの Grunt を使用しています。これは私の grunt ファイルです
インストルメント化されたコードは次のようになります: http://pastebin.com/3wAt5VZT
istanbul lcov.info ファイルの一部 (正しく生成されたもの)
mocha はテスト カバレッジを取得していないようですが、有効にするstoreCoverage
とmakeReport
、instabul は正しいファイル数と各ファイルで使用されているコードの割合を表示します。モカはjscoverageからのカバレッジのみを使用できますか? そうでない場合、手順が不足していますか?
code-coverage - カルマでコード カバレッジを生成するファイルを指定する
現在取り組んでいるプロジェクトのコード カバレッジを生成しようとしています。このプロジェクトは数年前からあり、最近単体テストの作成を開始したばかりです。つまり、実際の単体テストがあるファイルのカバレッジのみを生成したいということです。テストは jasmine で記述され、カルマを使用してコード カバレッジを作成します。
現在、カルマ構成のプリプロセッサ部分は次のようになっています。
ただし、この方法でリストされた最初のファイルに対してのみコード カバレッジが生成されるようです。私が見たすべての例は、正規表現を使用してすべてのファイルをリストしますが、非常に異なる名前の異なるフォルダーにいくつかのファイルのテストがあり、一部のフォルダーには単体テストを持たないコードがほとんど含まれているため、作成方法がわかりません私たちが持っているさまざまなファイルに一致できる正規表現。
正規表現を使用せずに複数のファイルを一覧表示する方法はありますか? また、単体テストを行っているファイルのみに一致する正規表現を簡単に作成する方法はありますか?
karma-runner - カルマの間違ったカバレッジ レポート
テストのコード カバレッジに関するレポートを取得するために、前処理を有効にしてkarma.conf.jsを構成しました。この行をプリプロセッサセクションに追加しました。
私が得たのは、まったく間違った報告です。各モジュールとその中の関数のテストを書いたことは知っています。しかし、カバレッジ レポートには、サービスのテストのみが正しく表示されます。
たとえば、ディレクティブのテスト。私はいくつかのテストを書き、そのテストも実行されることを知っています。しかしレポートによると、コード行の 36% をテストしただけです。
この奇妙な動作の理由は何でしょうか?
アップデート:
仕様レポーターからの次の出力が表示されます。
それで、私のテストはすべて実行されると思います。
angularjs - AngularJS の $routeChangeStart の Jasmine ユニット テスト ケース
こんにちは、私は を使用してアプリを構築しAngularJS
ています。今は、アプリケーションの単体テストを行っています。サービス、コントローラーなどの単体テスト ケースの書き方は知っていますが、$routeChangeStart
.
app.js に次のコードがあります
アプリのルーティングごとにユーザーがログインしているかどうかを確認するために、このコードを作成しました。AuthenticationService
この目的のために、次のようなサービスを作成しました。
そして、私のセッションサービスは次のようになります。
Jasmine
テストケースを書くために使用し、Istanbul
コードカバレッジに使用しています。を使用してテストを実行するGrunt
と、app.js で次のようなものが得られます。
これは、この特定のコードのテスト ケースの書き方がわからないため、テスト ケースでこれらのステートメントをカバーしていないためです。助言がありますか?
intern - インターンで HTML コード カバレッジ レポートを生成する
インターンテスト フレームワーク ( http://theintern.io ) には、イスタンブール サポートが組み込まれています。
reports 配列に追加lcov
すると、次のように変換できる lcov.info ファイルのみが生成されますgenhtml
。
完全な HTML レポートを生成することは可能ですか?