2009-09-02 4 views
2

私はWPFアプリケーションでいくつかのテストを作成しました。今はイメージやテキストブロックなどの単一コンポーネントのテストに取り組んでいます。私が単体テストで単一のテストを実行すると、それらはすべて障害なく通過します。この問題は、すべてのテストを実行しようとすると発生し、WPFコンポーネントを作成および変更するテストで次のエラーが発生します。VS08ユニットテストフレームワークでWPFコンポーネントをテストするには?

"異なるスレッドが所有しているため、このオブジェクトにアクセスできません。

テストで明示的にスレッドを作成しないので、VS08は自分のコードを巧妙に爆破しようとしています。アプリケーションのディスパッチャを使用しようとしましたが、動作しませんでした...

何か提案がありますか?

答えて

1

おそらくVS08は別のスレッドで各テストを実行していますか?そうであれば、お互いに隔離されて書かれていれば、あなたのテストはまだ機能するはずです。テスト間で状態を共有していないことを確認してください。それぞれのテストは、他のテストとは独立して独自のセットアップ/ティアダウンを行う必要があります。

+1

いいえ、スレッドを作成せず、テスト間でデータを共有しません。問題は、すべてのテストで同じ「GUI」スレッドで編集する必要があるWPFコントロールを使用することです。 – bluebit

関連する問題