我有以下文件夾結構:PHP:運行phing時只包含文件?
/main
/loader.php
/build.xml
/components
/package1
/class1.php
/package2
/class2.php
/tests
/package1
/class1.test.php
/package2
/class2.test.php
當運行在第一web應用我加載loader.php
和包括通過調用Loader::load('package_name')
其他組件。然後包括所有必要的文件。這裏的好處是,我不需要在類文件中包含loader.php
,因爲我可以依靠工作實例Loader
。
單元測試類通過顯式包含所有需要的類來模擬此行爲。所以phing和PHPUnit也沒有問題。
但現在我想用phing和Xdebug生成覆蓋率報告。這裏的問題是,phing似乎加載每個PHP文件來創建覆蓋數據庫。不幸的是,它停止了,因爲它找不到在PHP文件中使用的Loader
類。
我可以很容易地爲每個類文件添加include
語句,但是我不知道是否有一種方法只有在代碼覆蓋率分析檢查文件時才包含文件?
其他想法:我也可以配置覆蓋率分析的方式,它掃描單元測試目錄,因此找到所有需要包括。然後我需要過濾類似/Test$/i
等模式的類。可能?