2013-07-26 80 views
0

我正在使用phpunit進行單元測試。在一些測試類中,我需要執行在另一個測試類中已經實現的相同測試。從測試類B的方法調用測試類A的方法

那麼有可能調用另一個測試類的測試方法嗎?

+0

可能你應該將函數提取到幫助類? – henrik

回答

0

你可以調用另一個類的測試方法。您可以在測試中創建測試類的實例,然後調用該方法。

但是,僅僅因爲你可以做點什麼並不意味着你應該做點什麼。

您所描述的用例聽起來像是具有重複的功能。你應該重新考慮你的設計,這樣你就不需要做你所描述的事情。你的測試應該是相當容易遵循的小功能。如果您正在接觸其他測試課程,您的測試可能變得難以維護,變得脆弱並且難以理解。

+0

是的,有重複的測試。情景是,爲了執行某些操作,我調用A類的方法,然後將該工作委託給B類的方法,並在收到響應時修改結果並傳回給我。這就是爲什麼這兩種方法的測試方法可能相同,我需要從另一個類中調用測試方法。 – Geek

+0

您不需要重複測試。研究Mock對象,並創建一個模擬B類的方法來測試類A,而不是嘗試調用另一個測試。 http://phpunit.de/manual/current/en/phpunit-book.html#test-doubles.mock-objects – Schleis