1
以前使用過RhinoMocks的經驗,它區分兩種不同類型的類:一種是嚴格的,執行完全類似於標準JMock嘲諷的檢查,另一種是根本不關心關於你沒有列入你的期望的方法。例如,如果要測試對象上是否調用方法a(),但整個程序可能會隨後調用其他許多方法,則在JMock中,必須明確列出所有內容,而Rhino只會關心你真正列出的那些被稱爲。有沒有辦法在JMock中實現相同的行爲?JMock - 期望中的方法子集
以前使用過RhinoMocks的經驗,它區分兩種不同類型的類:一種是嚴格的,執行完全類似於標準JMock嘲諷的檢查,另一種是根本不關心關於你沒有列入你的期望的方法。例如,如果要測試對象上是否調用方法a(),但整個程序可能會隨後調用其他許多方法,則在JMock中,必須明確列出所有內容,而Rhino只會關心你真正列出的那些被稱爲。有沒有辦法在JMock中實現相同的行爲?JMock - 期望中的方法子集
but the whole program might subsequently invoke many other methods
每當我覺得在JMock中需要更多'功能'時,我通常會發現我有一個設計問題。你是否認爲需要在同一個對象上調用多種不同的方法?你能否重構你正在測試的行爲只涉及到幾個模擬調用?
您可以使用allowing(mockedInterface)
來允許模擬上的所有呼叫。
但請注意,您不能將'allow'與其他期望結合在同一個對象上,因爲這些將會失敗。 –