我試圖在web應用程序中實現單元測試,並且它的某些部分使用ThreadLocal。使用Thread Local的應用程序的單元測試
我不知道如何去測試它。
它看起來像Junit運行所有的測試使用單線程,即主線程。
我需要能夠爲我的ThreadLocal變量分配不同的值。
有沒有人遇到過這種情況?你們推薦什麼?
我試圖在web應用程序中實現單元測試,並且它的某些部分使用ThreadLocal。使用Thread Local的應用程序的單元測試
我不知道如何去測試它。
它看起來像Junit運行所有的測試使用單線程,即主線程。
我需要能夠爲我的ThreadLocal變量分配不同的值。
有沒有人遇到過這種情況?你們推薦什麼?
Groboutils支持運行多線程測試,這將允許您測試您的ThreadLocal變量。
http://groboutils.sourceforge.net/testing-junit/using_mtt.html
我只想我的單元測試中啓動線程。
我建議您使用Futures
並使用ThreadPoolExecutor
執行它們。
這可能足以用超時裝飾相應的測試方法,即@Test(timeout=100)
。請注意0中的「線程安全警告」,特別是在使用@BeforeClass和@After註釋時。
這不會影響您的測試的交易性質嗎?我的理解是,事務綁定到當前的執行線程。我正在談論春季交易型單元測試。 – Sudarshan 2012-02-29 17:04:23