2016-11-07 15 views
-5

CFSで10K +ユニットテストが実行され、ローカルとTFSで実行されているときに渡されます。Jenkinsでユニットテストが失敗する

私たちはソリューションスタック用にJenkinsを設定しています。私たちは、約250個のUnitestが一貫して失敗するという問題に直面しています。

Visual StudioとCommnadプロンプト(MSTest)を使ってjenkinsセットアップサーバーで実行しようとすると、同じ単体テストが渡されます。

あなたはどう思いますか?この問題を見るためのあらゆるリードが役立ちます。

編集1:

私は問題自体が奇妙なものですと何かを見つけることができ、研究されていないでした。あなたが明確でない場合は、ダウン投票の代わりに質問をしてください。

編集2:

私は問題を見つけることができています。それはunittests dll設定ファイルと一緒です。私が設定ファイルを削除してサーバ上でMSTestを実行すると、Jenkinsのセットアップで失敗した同じ一連のテストが失敗しています。

私はunittests dll設定ファイルを読み込むためにJenkinsポータルで設定された手順を変更する必要があると思います。

答えて

0

私の推測では、実際には単体テストではなく、代わりに統合テストか悪化しており、それらは非決定論的に失敗します。それ以外にも、ソースコードを公開せずにここでは不可能にするよう人々に求めています。

ジェンキンスIMOについて知っているコンサルタントを募集してください。

+0

ご回答ありがとうございます。私はこれらがユニットテストであると確信しています、なぜ彼らが失敗しているのかを知る必要があります。 –

0

条件付きコンパイルシンボルに問題がある可能性があります(DEBUGRELEASEコード)。通常、VSでは、リリースビルドのCIサーバー上でDEBUGビルドでテストを実行します。

グローバル状態が正しくクリーンアップされていないかどうかを確認してください。テストの後にまだ実行中のスレッドは、後でテストが別のテストdllにある場合でも、後でテストが破損する可能性があります。これは、テストの失敗がテストの実行順序に依存する場合に検出されることがあります。

多くの場合、テストデータがファイルに依存するという問題があります。テストが実際に実行される仮想化環境でファイルが見つからないことがあります。 Deployment属性を使用します。

0

私はNCrunchと同様の問題がありました。たぶんあなたは、VSの "ビルド"タグをプラットフォームのターゲットにチェックインすることができます。 Jenkinsが設定されているのと同じにする必要があります。たとえば、 "Platform target"はx64で、Jenkinsでも同様に使用する必要があります。

関連する問題