2014-07-02 86 views
1

我認爲一段被測試的代碼不應該知道它正在測試中。因此,這個問題代表了一種反模式,但我需要以特定的方式配置遺留應用程序(如果從JUnit集成測試中調用的話)。如果你認爲這聽起來像一個不使用CDI的應用程序,那麼你是正確的。如何判斷是否從JUnit調用?

我總是可以走棧看看我是否被JUnit調用。我希望有更優雅的東西。

+0

您需要配置什麼?我在想也許使用模擬框架(4eg mockito + powermock)會有所幫助,或者可能是使用JUnit測試用例的一些反思,以避免爲了測試而修改生產代碼。 – Morfic

+0

感謝您的評論。集成測試需要讀取成千上萬行(大約4000)並更新其中的一些,然後用不同的數據重複該過程約250次(現在我們處於500000個模擬對象)。測試是多線程的,我們特別希望數據庫介於兩者之間。請記住,我提到這是一個集成測試,它不是在Continuos Integration期間運行的測試,而是確實依賴於集成的系統。 – cmdematos

+0

對不起,錯過了它是一個集成測試,不嘲笑。但是,您仍然需要讓我們知道您需要在測試中配置不同的東西。 – Morfic

回答

2

如何使用由JUnit測試設置的系統屬性,由被測試的類進行評估,然後由JUnit重新設置?

+0

我已經完全實現了這一點。我想知道我是否複製了jUnit已有的一些功能。 – cmdematos

+0

對不起,但JUnit對這個用例沒有特別的功能。 –

相關問題