1000 程度のテストを含む NUnit テスト プロジェクトがあります。このプロジェクトには、主にカスタム WPF コントロール用の高レベル コンポーネント テストが含まれています。テスト プロセスは、ビルド サーバー (TeamCity) で頻繁に失敗します。
InvalidOperationException "LocalDataStoreSlot ストレージが解放されました"
mscorlib.dll!System.LocalDataStore.GetData(System.LocalDataStoreSlot スロット)
mscorlib.dll!System.Threading.Thread.GetData(System.LocalDataStoreSlot スロット)
WindowsBase.dll!System.Windows.Interop.ComponentDispatcher.CurrentThreadData.get() ...
テストには [RequiresSTA] 属性、Window.Show()、Dispatcher 操作などが含まれているため、通常の単体テスト プロジェクトではありません。
失敗は完全にランダムに見えます。80% の確率で発生するリビジョンがありますが、ほとんどの場合、まったく発生しません。xaml コードでスタイルを変更するなど、製品コードの非常に不思議な、時には単純な変更が失敗を引き起こし、製品コードの次の変更でそれが修正されます。
この特定のランダムな失敗は、開発者チームをかなり動揺させることがあります。拡張ビルド システムは、この失敗によって深刻な障害を受けています。
nunit-console.exe を使用してプロジェクトをローカルで実行すると、ほとんど再現できませんでした。
このようなテスト プロセスの失敗を見たことがありますか? この問題を解決するためのヒントをいただければ幸いです。
ありがとう