2017-03-09 1 views
0

私はユニットテストとjenkinsパイプラインとの統合のためにkarma.jsを実行しています。私の目標は、カルマから投げられたエラーのタイプを読み取ることです。パーセンテージに関連するエラーであれば、ジョブを終了します。そうでない場合は、ユニットテストの失敗などのその他のエラーがあっても続行します(これは必須条件です。JenkinsでKarma.jsのカバレッジを取得する

私はこれを行う方法が見つかりませんでした。どんな考えもありがとう!

karma start ibx-test/olb/karma.conf.js --browsers PhantomJS --log-level warn --single-run 


coverageReporter: { 
     type: 'lcov', 
     dir: 'unit-tests/coverage/', 
      check: { 
       global: { 
       lines: 100 //This is just for testing 
       } 
      } 
    } 

午後04時17分43秒[単体テスト] 09 03 2017 21:17:43.024:ERROR [カバレッジ]: PhantomJS 2.1.1(Linuxでは0.0.0):カバレッジのためにライン(90.33パーセント)は は、グローバルしきい値(100%)

EDITを満たしていない:私は「ステップの構築」の下にパイプラインの構文で「プロセスのxUnitテスト結果報告書」を見つけ、私は何とかこれを使用することができますか?カルマレポートとxUnitの間に相関関係はありますか?

答えて

0

これを行う方法が見つかりました。 「Process xUnitテスト結果レポート」は、これを正確に実行するのに役立ちます。私はパイプラインの構文をチェックアウトし、それは私に以下のスクリプトを与え、それは働いた。

step([$class: 'XUnitBuilder', testTimeMargin: '3000', thresholdMode: 1, 
    thresholds: [ 
    [$class: 'FailedThreshold', failureNewThreshold: '', 
       failureThreshold: '2', unstableNewThreshold: '', 
       unstableThreshold: '1'], 
    [$class: 'SkippedThreshold', failureNewThreshold: '', 
      failureThreshold: '', unstableNewThreshold: '', 
      unstableThreshold: '']], 
    tools: [[$class: 'JUnitType', deleteOutputFiles: false, 
     failIfNotNew: false, pattern: 'ibx-test/reports/unit-tests/PhantomJS_2.1.1_(Linux_0.0.0)/ibx-test/reports/unit-tests/*.xml', 
     skipNoTestFiles: false, stopProcessingIfError: false]]]) 
  • thresholdMode:テストがしきい値に使用される数(失敗またはスキップ)を意味します。数字は1、パーセントは2です。私は1を使用したので、1つのテストを失敗させて、結果を得ることができます。
  • FailedThreshold:クラスは障害のしきい値に使用されますか。
  • SkippedThreshold:スキップされたテストに使用できます。私はまだそれを使用していない。

このテストでは他のパラメータには注意を払っていません。

私の値は2です(failureThreshold: '2')。 2つのテストが失敗すると、ビルドは失敗し、終了します。

関連する問題