PhpUnit9.5环境搭建和覆盖率
PhpUnit
1. 环境搭建
l 通过Ide下载安装phpunit
2. 自动载入
l PHPUnit提供了一个参数--bootstrap,可以使用项目的autoload文件。这里我自己写了一个最简单的autoload.php,只要4行。这个文件并不是PHPUnit专用的,应该放在app目录下。
<?php
function __autoload($class){
include $class.'.php';
}
spl_autoload_register('__autoload');
3. PhpUnit.xml配置
<phpunit
bootstrap="./app/autoload.php"
>
<testsuites>
<testsuite name="TestSuite">
<directory>tests</directory>
</testsuite>
</testsuites>
<coverage>
<include>
<directory suffix=".php">app</directory>
</include>
<report>
<clover outputFile="./test-result/clover/clover.xml"/>
<crap4j outputFile="./test-result/crap4j/crap4j.xml" threshold="50"/>
<html outputDirectory="./test-result/html-coverage" lowUpperBound="50" highLowerBound="90"/>
<php outputFile="./test-result/coverage/coverage.php"/>
<!-- <text outputFile="coverage.txt" showUncoveredFiles="false" showOnlySummary="true"/>-->
<xml outputDirectory="./test-result/xml-coverage"/>
</report>
</coverage>
</phpunit>
4. 项目结构
5. 覆盖率输出
6. 参考靠文档
l https://phpunit.readthedocs.io/zh_CN/latest/configuration.html#bootstrap