action phpcov
1.0.0
此操作將產生 PHPUnit 覆蓋率 HTML 報告,使用 ZEIT Now 發布它,並強制執行最低覆蓋率等級。
now_token
(必要)您的 ZEIT Now 令牌 - 用於部署報告。
now_project
(可選)要將報告部署到哪個 ZEIT Now 專案。
min_coverage
(可選)要強制執行的最小覆蓋範圍(預設值為50
)。
phpunit
(可選) phpunit 指令(預設為./vendor/bin/phpunit
)。
url
來自 ZEIT Now 的部署 URL 以及覆蓋率報告。
以下是如何在 PHP 專案(例如 Laravel)上使用此操作。假設您的儲存庫具有帶有 ZEIT Now 令牌的NOW_TOKEN
秘密,您所要做的就是設定 PHP(使用覆蓋驅動程式),並安裝 Composer 依賴項。
on : [push]
jobs :
main :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- uses : shivammathur/setup-php@master
with :
coverage : pcov
php-version : ' 7.4 '
extension : dom, fileinfo, mbstring
- run : |
composer install --no-suggest --prefer-dist --optimize-autoloader
php -r "file_exists('.env') || copy('.env.example', '.env');"
php artisan key:generate
- uses : theomessin/action-phpcov
with :
min_coverage : 35
now_project : " action-phpcov "
now_token : ${{ secrets.NOW_TOKEN }}
phpunit : " ./vendor/bin/phpunit --testdox "
這將輸出如下訊息:
PHPUnit 8.5.2 by Sebastian Bergmann and contributors.
Example (TestsUnitExample)
Basic test
Example (TestsFeatureExample)
Basic test
Time: 160 ms, Memory: 18.00 MB
OK (2 tests, 2 assertions)
Generating code coverage report in Clover XML format ... done [10 ms]
Generating code coverage report in HTML format ... done [20 ms]
[Actual coverage is 44.23%. Minimum coverage is 35%]
▰▰▰▰▰▰▰▰▰▰▰▰▰▱▱▱▱▱▱▱▱▱▱▱▱▱▱▱▱▱
You may find a full coverage report here:
https://action-phpcov.now.sh
如果未滿足最小覆蓋範圍,則操作失敗。