phpunit file coverage inspection
v2.2.2
允許為每個檔案定義程式碼覆蓋率規則的工具。為每個檔案設定最小覆蓋率閾值,如果目前測試覆蓋率尚未達到標準,則為現有檔案配置自訂最小覆蓋率。檢查失敗將以checkstyle格式輸出,允許在ci/cd工具中匯入。
標準覆蓋率計算是在整個程式碼庫上計算的。例如,如果閾值是 80%,而一個檔案下降到 80% 以下,您永遠不會注意到這一點,因為總體覆蓋率從 87.6% 變為 87.4%。該軟體包可確保這種情況不再發生,並且覆蓋範圍是按文件計算的。
輸入:三葉草覆蓋率.xml
輸出:checkstyle 或 gitlab
透過以下方式將庫作為依賴項包含在您自己的專案中:
composer require "digitalrevolution/phpunit-file-coverage-inspection" --dev
檔案: phpfci.xml
<?xml 版本=“1.0”編碼=“UTF-8”?> <phpfci xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="vendor/digitalrevolution/phpunit-file-coverage-inspection/resources/phpfci.xsd"min-coverage= “100”allow-uncovered-methods =“假”> <custom-coverage><!-- 基於目錄的覆蓋規則--><directory path="src/Lib/" min="90"/><!-- 子目錄將取代父目錄規則--><directory path ="src/Lib/Config/" min="100"/><!-- 檔案規則將始終取代目錄規則 --><file path="src/Lib/Config/File.php" min="80 ”/> </custom-coverage> <!-- 當「allow-uncovered-methods」設定為 false 時,會覆寫特定檔案的此行為:--><ignore-uncovered-methods> <檔案路徑=“src/Command/ExampleCommand.php”/> </忽略未發現的方法> </phpfci>
選項 | 必需的 | 預設 | 描述 |
---|---|---|---|
最小覆蓋率 | 是的 | - | 全球最小覆蓋範圍 |
允許未覆蓋的方法 | 不 | 錯誤的 | 所有方法都應該至少有一定的覆蓋範圍 |
或根據現有覆蓋結果產生配置文件
php供應商/bin/phpfci基線--baseDir /home/ci/workspacecoverage.xml./phpfci.xml
將從coverage.xml 中的檔案路徑中減去基底目錄
檢查樣式格式:
php供應商/bin/phpfci檢查coverage.xml --reportCheckstyle=reports/checkstyle.xml
gitlab格式:
php供應商/bin/phpfci檢查coverage.xml --reportGitlab=reports/gitlab.errors.json
Gitlab 格式的檔案和文字輸出到 stdout:
php供應商/bin/phpfci檢查coverage.xml --reportGitlab=reports/gitlab.errors.json --reportText
標準輸出的文字格式:
php供應商/bin/phpfci檢查coverage.xml php供應商/bin/phpfci檢查覆蓋率1.xml覆蓋率2.xml
php供應商/bin/phpfci檢查coverage.xml --reportText
選項 | 價值觀 | 描述 |
---|---|---|
argument 1 | inspect , baseline | 要執行的命令。 |
argument 2 [ argument 3 ]... | coverage.xml [ coverage2.xml ] | phpunit clover 覆蓋率輸入檔。 |
--reportGitlab=[<file>] | 文件路徑或如果缺少標準輸出 | 要寫入 gitlab 格式的檔案(或標準輸出)。 |
--reportCheckstyle=[<file>] | 文件路徑或如果缺少標準輸出 | 要寫入 checkstyle 格式的檔案(或標準輸出)。 |
--reportText=[<file>] | 文件路徑或如果缺少標準輸出 | 要寫入 checkstyle 格式的檔案(或標準輸出)。 |
--config=<path-to-file> | phpfci.xml | 設定檔的路徑。 |
--baseDir=<path> | 預設為輸出檔案的目錄 | 專案的根目錄將用於使路徑相對。 |
--exit-code-on-failure | - | 發生故障時將退出代碼設定為1 。 |
注意:如果沒有設定--reportGitlab
、 --reportCheckstyle
或--reportText
,則預設為--reportText=php://stdout
第三個必要參數和--report
已被刪除,應替換為: --reportGitlab=<file>
、 --reportCheckstyle=<file>
或--reportText=<file>
在 123inkt(Digital Revolution BV 的一部分),每天都有 50 多名開發專業人員致力於改進我們的內部 ERP 和我們的多家商店。你想加入我們嗎?我們正在尋找開發商。