我目前正在使用 phpunit 和 symfony 5 開發單元測試。在之前使用 behat 的工作中,我們只能為具有特定標簽的測試重新加載數據庫。我想做類似的事情。我知道有 setUp() 方法和 @before 注釋,但它們不允許我為某些測試做事,而不是其他測試......理想情況下,我希望有一個 @reloadBase 注釋來放置以此為目標的測試方法,該注釋將綁定到 reloadBase() 方法或類似的方法;或者至少是類似的東西,但到目前為止我想不出一種方法來做到這一點。我想有可能將這些測試放在一個單獨的文件中,該文件將有一個 setUp 方法來執行此操作,但這并不是很好,我想保留當前的文件組織...有任何想法嗎 ?謝謝
1 回答

HUH函數
TA貢獻1836條經驗 獲得超4個贊
這里有兩個想法:
特征/基類
使用執行所有重新加載操作的方法創建特征或公共基類。使用該特征或擴展基類并僅在需要重新加載的方法中調用它。
擴展
實施擴展。將為BeforeTestHook
每個測試調用由類和方法名稱組成的字符串。您可以使用注釋閱讀器(例如Doctrine 的)或使用反射并自行解析 doc 塊來檢查@reloadBase
該方法上是否存在注釋。
- 1 回答
- 0 關注
- 118 瀏覽
添加回答
舉報
0/150
提交
取消