2011-10-29 39 views
2

是否已有一些現有的JUnit測試用於測試BlockingQueue接口?我可以下載一些課程,按播放,然後變成紅色(希望是綠色的:-)),而不必花一天時間思考所有的測試案例?BlockingQueue接口的JUnit測試

我使用Google搜索,但找不到任何東西。

一些想法?

編輯:提供的測試用例G_H非常適合調試基礎知識。對於沉重的多線程使用,是否還有一個很好的測試,這真的會引發競爭和僵局?

回答

1

由於BlockingQueue接口是在Java規範請求166(JSR-166)下開發的Java併發實用程序的一部分,我認爲來自相應技術兼容性工具包(或「tck」)的代碼應該是良好的起點。畢竟,規範的實現必須通過所述套件的測試才能被認爲是兼容的。

我沒有運氣從JCP網站獲得它(可能需要會員資格),但資源似乎是available here。感興趣的是BlockingQueueTest及其超類JSR166TestCase,其最新修訂版分別可以找到herehere。似乎在創作共用資源下獲得許可,但我建議您驗證給定鏈接的可靠性和許可約束,以便您自己使用。

幸運的是,所有這些似乎都是使用JUnit。我對版本不太確定,但他們使用testMethod約定而不是註釋。通過一些改編,我猜這個代碼可能會讓你很好。

+0

謝謝,測試在一些修改後仍然有效,但它只能真正測試基礎知識。我看不到多個線程正在啓​​動,競爭條件測試和檢測到死鎖。這是我比基本的javadoc規格更害怕的東西... –

+0

@FranzKafka沒有真正閱讀測試用例...我希望這種東西也要進行測試。通常在單元測試中有點工作。做了一些自己的同步收集,它需要一些助手類。也許有一個很好的多線程測試套件。我也有興趣看到這一點。 –