PHPUnit9.0 XML 配置文件-<coverage> 元素

2022-03-24 14:50 更新

<coverage> 元素

父元素:?<phpunit> ?

?<coverage>? 元素及其子元素可用于配置代碼覆蓋率:

<coverage cacheDirectory="/path/to/directory"
          includeUncoveredFiles="true"
          processUncoveredFiles="true"
          pathCoverage="false"
          ignoreDeprecatedCodeUnits="true"
          disableCodeCoverageIgnore="true">
    <!-- ... -->
</coverage>

cacheDirectory 屬性

可能值:字符串

當(dāng)收集并處理代碼覆蓋率數(shù)據(jù)時(shí),將執(zhí)行靜態(tài)代碼分析以改善有關(guān)覆蓋代碼的推理。這是一項(xiàng)昂貴的操作,而其結(jié)果可以緩存。設(shè)置 ?cacheDirectory ?屬性后,靜態(tài)分析結(jié)果將緩存在指定目錄中。

includeUncoveredFiles 屬性

可能值:?true或 ?false?(默認(rèn)值:?true?)

當(dāng)設(shè)置為 ?true ?時(shí),所有配置為代碼覆蓋率分析需要考慮的源代碼文件都將包含在代碼覆蓋率報(bào)告中。這包括測試運(yùn)行時(shí)并未執(zhí)行的源代碼文件。

processUncoveredFiles 屬性

可能值:?true或 ?false?(默認(rèn)值:?false?)

當(dāng)設(shè)置為 ?true時(shí),所有配置為代碼覆蓋率分析需要考慮的源代碼文件都將被處理。這包括測試運(yùn)行時(shí)并未執(zhí)行的源代碼文件。

ignoreDeprecatedCodeUnits 屬性

可能值:?true或 ?false(默認(rèn)值:?false?)

此屬性配置代碼覆蓋率是否應(yīng)忽略標(biāo)注為 ?@deprecated? 的代碼單元。

pathCoverage 屬性

可能值:?true或 ?false?(默認(rèn)值:?false?)

設(shè)置為 ?false時(shí),將僅收集、處理和報(bào)告行覆蓋率數(shù)據(jù)。

設(shè)置為 ?true時(shí),將收集、處理和報(bào)告行覆蓋率、分支覆蓋率和路徑覆蓋率數(shù)據(jù)。這需要支持路徑覆蓋率的代碼覆蓋率驅(qū)動程序。目前只有 ?Xdebug實(shí)現(xiàn)了路徑覆蓋率。

disableCodeCoverageIgnore 屬性

可能值:?true或 ?false(默認(rèn)值:?false?)

此屬性配置是否應(yīng)忽略 ?@codeCoverageIgnore*? 批注。

<include> 元素

父元素:?<coverage>?

配置要包含在代碼覆蓋率報(bào)告中的文件集合。

<include>
    <directory suffix=".php">src</directory>
</include>

上面示例指示 PHPUnit 在代碼覆蓋率報(bào)告中要包含在 src 目錄及其子目錄中的所有帶 ?.php? 后綴的源代碼文件。

<exclude> 元素

父元素:?<coverage>?

配置要從代碼覆蓋率報(bào)告中排除的文件集合。

<include>
    <directory suffix=".php">src</directory>
</include>

<exclude>
    <directory suffix=".php">src/generated</directory>
    <file>src/autoload.php</file>
</exclude>

上面示例指示 PHPUnit 在代碼覆蓋率報(bào)告中要包含在 src 目錄及其子目錄中的所有帶 ?.php? 后綴的源代碼文件,但要排除 ?src/generated? 目錄及其子目錄中的所有帶? .php? 后綴的文件以及 ?src/autoload.php? 文件。

<directory> 元素

父元素:?<include>?、?<exclude>?

配置要包含在代碼覆蓋率報(bào)告中或從代碼覆蓋率報(bào)告中排除的目錄及其子目錄。

prefix 屬性

可能值:字符串

配置基于前綴的過濾器,該過濾器將應(yīng)用于目錄及其子目錄中的文件名。

suffix 屬性

可能值:?string?(默認(rèn)值:?'.php'?)

配置基于后綴的過濾器,該過濾器將應(yīng)用于目錄及其子目錄中的文件名。

phpVersion 屬性

可能值:字符串

配置基于用來運(yùn)行當(dāng)前 PHPUnit 進(jìn)程的 PHP 運(yùn)行時(shí)版本的過濾器。

phpVersionOperator 屬性

可能值:?'<'?、?'lt'?、?'<='?、?'le'?、?'>'?、?'gt'?、?'>='?、?'ge'?、?'=='?、?'='?、?'eq'?, ?'!='?, ?'<>'?, ?'ne'?(默認(rèn)值:?'>='?)

配置基于用來運(yùn)行當(dāng)前 PHPUnit 進(jìn)程的 PHP 運(yùn)行時(shí)版本的過濾器的 ?version_compare()? 操作所用的比較運(yùn)算符。

<file> 元素

父元素:?<include>?、?<exclude>?

配置要包含在代碼覆蓋率報(bào)告中或從代碼覆蓋率報(bào)告中排除的文件。

<report> 元素

父元素:?<coverage>?

配置要生成的代碼覆蓋率報(bào)告。

<report>
    <clover outputFile="clover.xml"/>
    <crap4j outputFile="crap4j.xml" threshold="50"/>
    <html outputDirectory="html-coverage" lowUpperBound="50" highLowerBound="90"/>
    <php outputFile="coverage.php"/>
    <text outputFile="coverage.txt" showUncoveredFiles="false" showOnlySummary="true"/>
    <xml outputDirectory="xml-coverage"/>
</report>

<clover> 元素

父元素:?<report>?

配置 Clover XML 格式的代碼覆蓋率報(bào)告。

outputFile 屬性

可能值:字符串

Clover XML 報(bào)告寫入的文件。

<crap4j> 元素

父元素:?<report>?

配置 Crap4J XML 格式的代碼覆蓋率報(bào)告。

outputFile 屬性

可能值:字符串

Crap4J XML 報(bào)告寫入的文件。

threshold 屬性

可能值:?integer?(默認(rèn)值:50)

<html> 元素

父元素:?<report>?

配置 HTML 格式的代碼覆蓋率報(bào)告。

outputDirectory 屬性

HTML 報(bào)告寫入的目錄。

lowUpperBound 屬性

可能值:?integer?(默認(rèn)值:50)

應(yīng)當(dāng)被視為“低覆蓋率”的上限。

highLowerBound 屬性

可能值:整數(shù)(默認(rèn)值:90)

應(yīng)當(dāng)被視為“高覆蓋率”的下限。

<php> 元素

父元素:?<report>?

配置 PHP 格式的代碼覆蓋率報(bào)告。

outputFile 屬性

可能值:字符串

PHP 報(bào)告寫入的文件。

<text> 元素

父元素:?<report> ?

配置文本格式的代碼覆蓋率報(bào)告。

outputFile 屬性

可能值:字符串

文本報(bào)告寫入的文件。

showUncoveredFiles 屬性

可能值:?true或 ?false?(默認(rèn)值:?false?)

showOnlySummary 屬性

可能值:?true或 ?false(默認(rèn)值:?false

<xml> 元素

父元素:?<report> ?

配置 PHPUnit XML 格式的代碼覆蓋率報(bào)告。

outputDirectory 屬性

可能值:字符串

PHPUnit XML 報(bào)告寫入的目錄。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號