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

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