我只是通過簡化事情來重構許多代碼部分。 現在我需要重構測試以及再次使它們變綠,這並不困難。Mockito:如何識別測試中未使用的.when()
但是現在我掙扎了一下,因爲我看到我不再需要一些.when()聲明,因爲這些Mocks不會再被調用。問題是他們不會讓我的測試變成紅色,所以我只能通過仔細檢查每個測試並將其與代碼進行比較來識別它們,這是令人討厭的,並導致讓它變成這樣。
是否有任何可能使未使用.when()的拋出錯誤或類似的東西?就像從未發生過的驗證一樣?這足夠像setUp:Mockito.enableDebugMode()或其他,也許有這樣的可能性嗎? ..
最好
嘗試簡單地刪除when()並運行測試。如果它變成紅色,這個'when'顯然是必需的。 – ponomandr 2014-08-29 08:23:23
如果你已經重新考慮了你的代碼並破壞了你的測試,那麼你正在做壞事。重新分解後,您的測試應保持綠色。如果你重新考慮更小的步驟,那麼你可以一次處理一個測試用例,而不會在這個黑暗的地方發現自己。此外,你的測試應該是小而容易理解,否則你的課堂測試做得太多。 – Brad 2014-08-30 11:09:25