[英]PHP Unit Testing Coverage
我是 PHP 開發新手,但有開發 Python Web 應用程序的經驗。 在 Python 中,有一個名為Coverage的包,用於分析代碼並識別缺少單元測試的功能。
PHP 世界中是否存在這樣的包? 我已經搜索了谷歌和 SO 並得出了簡短的結論。 感謝您的幫助!
PHPUnit 內置了覆蓋率。您可以使用以下命令生成 html 覆蓋率報告
phpunit --coverage-html /[path where to save report]
另一種選擇是--coverage-clover
而不是--coverage-html
。 這將生成關於所涵蓋內容的 xml 報告。
如果您使用像 phpStorm 這樣的高級 IDE,您只需右鍵單擊測試並選擇“Run with coverage”,它將在編輯器的文件資源管理器中顯示覆蓋率。
PHPUnit 支持代碼覆蓋並且是事實上的標准。 與 Jenkins 等人集成。
https://phpunit.de/manual/current/en/code-coverage-analysis.html
是 有許多代碼覆蓋工具。 將以下鏈接添加到您的 phpunit.xml
<logging>
<log type="coverage-html" target="./mainreport" charset="UTF-8"
yui="true" highlight="true"
lowUpperBound="50" highLowerBound="80" />
</logging>
安裝 XDEBUG , (ex: for ubuntu and php7 - sudo apt-get install php7.0-xdebug)
這會將您的報告記錄到目標屬性中指定的目錄 (target="./mainreport")。 報告也將采用 html 格式
在您的根目錄中創建一個mainreport
目錄。 運行單元測試在瀏覽器中打開 index.html,您可以看到覆蓋率報告。
PHPUnit 本身具有使用PHP_CodeCoverage的覆蓋工具
此頁面顯示所有不同的覆蓋選項: https : //phpunit.de/manual/current/en/textui.html
一個示例 html 輸出覆蓋命令行是:
phpunit ./report tests/*
這將創建一個名為 report 的文件夾,並包含測試/文件夾下所有測試的所有覆蓋范圍
您還可以通過使用 json 文件檢查項目模塊 Wise 中有多少案例通過或失敗來生成案例報告。
將此代碼添加到您的 phpnit.xml 文件中:
<log type="json" target="./log/jsonreport.json" charset="UTF-8"/>
運行后,生成的文件( jsonreport.json
)已通過案例列表應該存在。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.