2

インターフェイスJUnitをテストするための既存のテストは既にありますか? BlockingQueueダウンロードできるいくつかのクラスは、再生を押すと、すべてのテストケースを考えるのに1日を費やすことなく、赤に変わります(うまくいけば緑:-))?

私はグーグルで検索しましたが、何も見つかりませんでした。

いくつかのアイデア?

編集: G_Hが提供したテスト ケースは、基本的なデバッグに非常に適していました。マルチスレッドを頻繁に使用するための適切なテストがまだありますか?それは実際に競合やデッドロックを引き起こしますか?

4

1 に答える 1

1

BlockingQueue インターフェイスは、Java Specification Request 166 (JSR-166) に基づいて開発された Java 同時実行ユーティリティの一部であるため、対応するテクノロジ互換性ツールキット (または「tck」) のコードが出発点として適切であると考えられます。結局、仕様の実装は、互換性があると見なされるために、前述のキットのテストに合格する必要があります。

JCP サイトから入手することはできませんでしたが (おそらくメンバーシップが必要です)、リソースはここから入手できるようです。興味深いのは、BlockingQueueTest とそのスーパー クラス JSR166TestCase です。最新のリビジョンは、それぞれここここにあります。クリエイティブ コモンズの下でライセンスされているようですが、リンクの信頼性とライセンスの制約をご自身で使用することに対して確認することをお勧めします。

幸いなことに、これらはすべて JUnit を使用しているようです。バージョンについては定かではありませんが、testMethod注釈ではなく規則を使用しています。いくつかの適応により、このコードはうまくいくと思います。

于 2011-10-29T12:10:36.933 に答える