問題タブ [karma-coverage]

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.

0 投票する
11 に答える
24425 参照

phantomjs - お使いのプラットフォームに PhantomJS ブラウザーのバイナリがありません。「PHANTOMJS_BIN」環境変数を設定してください

私のpackage.jsonは次のようになります..

私のnpmバージョンは2.2.0です

karma test - karma start my.conf.js を実行すると、これが表示されるのはなぜですか

0 投票する
1 に答える
10309 参照

javascript - Sonarqube が LCOV から JavaScript カバレッジを取得しない

次の構造のアプリケーションがあります。

pom.xmlSonarQube 分析を実行するためだけに作成しました。それ以外の場合、すべてのタスクは Grunt によって実行されます (テストは Karma で実行されます)。

の内容はpom.xml次のとおりです。

を実行すると、次の情報を含む がgrunt test作成されます。build/karma/coverage/lcov.info

SonarQube 分析の後、ダッシュボードには 0% のコード カバレッジが表示されます。

のパスがSF:エラーの原因であると思われました。したがって、別の値をテストするために別のプロパティを使用するsonar.javascript.lcov.reportPathようにプロパティを変更しました。lcov.infoapp.js./app.jsapp/scripts/app.js./app/scripts/app.js

私は何が欠けていますか?

念のため、に次の構成がありますkarma.conf.js

ps: ソナーのバージョンは 3.7.2 ですが、4.3 でも試してみましたが、同じ結果でした...


編集: Sonar-runner を直接使用するように構成を更新しました。最新バージョンの Sonar (5.0.1) と JS プラグイン (2.3) を使用しています。lcov.infoまた、「適切な」形式 (Sonar リポジトリの例と一致する少なくとも 1 つの形式) を持つように手動で変更しました。

次のsonar-project.propertiesようになります。

それでも、カバレッジの 0% :(

0 投票する
1 に答える
7948 参照

javascript - Karma によって実行される LCOV レポートの形式を変更する方法は?

JavaScript コードのカバレッジを報告するように Karma を構成しました。karma.conf.jsファイル内の構成の一部を次に示します。

私のlcov.infoファイルの形式は次のとおりです。

残念ながら、Sonarqube JavaScript プラグインSF:は、DA:またはで始まる行のみを考慮しますBRDA:( LCOVParserを参照)。

そのため、LCOV HTML レポート (Istanbul が作成) は、同じデータで Sonar よりも高いコード カバレッジを提供してくれます。

生成された形式を変更する方法はありlcov.infoますか?


イスタンブールのコードを見ると、さまざまなラベルの意味を想像できます。

  • BRFBRHBRDAブランチ用です。
  • FN、、、FNF関数FNHFNDAです。
  • LNLFは行LH用です。
  • *Fは合計、*Hは対象となる情報です。

イスタンブールとソナーのカバレッジの違いは、後者が関数とブランチのカバレッジを完全に無視しているという事実によるものと思われます。

それを解決するためのアイデアはありますか?

0 投票する
1 に答える
193 参照

javascript - 複数の require モジュールの単体テストをセットアップする方法

コードが複数のrequireモジュールに分割されているコードベースに取り組んでいます。つまり、各セクションには、必要な構成を備えた独自の main.js があります。

Karma を使用して、コード ベース全体のコード カバレッジを設定したいと考えています。

各セクションには独自の requirejs 構成があるため、モジュールごとに test-main.js を作成しました。

そして、karma.config にすべての test-main.js ファイルをロードさせます。

問題が発生しています。baseUrl 間に衝突があります。

モジュールを 1 つだけテストすると、問題なく動作します。

何か案が ?

0 投票する
2 に答える
36166 参照

karma-runner - カルマ コード カバレッジ レポートからファイルを除外するにはどうすればよいですか?

カルマ カバレッジ ランナーhttps://github.com/karma-runner/karma-coverageのコード カバレッジ レポートからファイルを除外する方法はあります か?

0 投票する
2 に答える
1536 参照

javascript - Karma カバレッジと Babel+Browserify 前処理

Karma を使用して ES6 コードをテストしています。ミックスに追加karma-coverageするときは、有効なレポートを作成するためにカバレッジ ツールのすべてのソース ファイルを追加する必要がありますが、そうすると、すべてのブラウザーで Karma から次のエラーが表示されます。

PhantomJS 1.9.8 (Mac OS X 0.0.0) エラー

エラー: 不変違反: _registerComponent(...): ターゲット コンテナーは DOM 要素ではありません。

/var/folders/55/9_128mq95kz1q_2_vwy7qllw0000gn/T/41cf272955d73fbba8ad1df941172139.browserify:46444:0 <- ../../node_modules/react/lib/invariant.js:49:0 で

私の Karma 設定ファイルは次のとおりです。

'./client/**/*.js',配列から削除するfilesと、テストは機能しますが、カバレッジにはテスト コードしか表示されません。gulp の Karma を で使用しgulp-karmaていますが、これは問題とは関係ないと思います。

0 投票する
2 に答える
1491 参照

javascript - Karma/Istanbul でターゲット コード カバレッジを設定する

コード カバレッジのために Karma-Coverage(Istanbul) を使用して Karma Maven プラグインを実行しています。Karma-Coverage は、必要な (推奨される) コード カバレッジに対してデフォルトで 80% に設定されているようですが、プロジェクトで 90% のコード カバレッジを適用したいと考えています。ただし、これをどこに設定するかわかりません。

Karma/Istanbul でターゲット コード カバレッジを適用する方法はありますか?

0 投票する
1 に答える
2642 参照

karma-runner - Karma コード カバレッジ - 常に 100%?

おはよう、

解決できないような奇妙な問題が発生しています。Karma テストを記述して正しく実行しましたが、Karma のコード カバレッジを接続しようとすると、何があっても 100% 吐き出されます。

ここで提起された他の質問を見ましたが、どれも私の問題を解決していないようです。どんな助けでも大歓迎です。

使用:

ここに私のkarma.conf.jsがあります

私のファイル構造は次のとおりです。

ありがとうございました!