2016-12-15 85 views
2

我現在有一個phpunit.xml文件看起來像這樣:PHPUnit的白名單VS測試套件的代碼覆蓋率

<testsuites> 
    <testsuite name="Application Test Suite"> 
     <directory suffix="Test.php">tests</directory> 
    </testsuite> 
</testsuites> 
<filter> 
    <whitelist processUncoveredFilesFromWhitelist="true"> 
     <directory suffix=".php">src</directory> 
    </whitelist> 
</filter> 

一些問題,我有:

我是正確的假設,在我<testsuite><directory suffix="Test.php">tests檢查該目錄中對應於Test * .php的文件?

目前,我有我的SRC文件夾內的.PHP文件與它的一些HTML。在運行我的單元測試時,PHPUnit接收這個文件並將其全部內容轉儲爲輸出。我想這是因爲我的白名單設置爲processUncoveredFilesFromWhitelist

我想,這看起來對所有與PHP擴展,並檢查文件是否已經過測試或沒有。

我可以白名單簡單地改變我的測試目錄,這解決了問題,但我想這讓我的代碼覆蓋率報告無法看到哪些類尚未測試?

我是什麼在這裏做的時候我還是希望有我的項目裏面根本.php文件,我想的地方包括哪些內容?我在我的phpunit.xml文件中寫了些什麼來忽略這些文件?

回答

1

可以排除該文件(及任何其他非可測試文件)具有以下:

<testsuites> 
    <testsuite name="Application Test Suite"> 
     <directory suffix="Test.php">tests</directory> 
    </testsuite> 
</testsuites> 
<filter> 
    <whitelist processUncoveredFilesFromWhitelist="true"> 
     <directory suffix=".php">src</directory> 
     <exclude> 
      <file>/path/to/your_html_file.php</file> 
     </exclude> 
    </whitelist> 
</filter> 

在回答你的第一個問題,test.php的是後綴,所以它看起來對*測試。 PHP。