Конфигурация
PHPUnit формирует эффективную конфигурацию для запуска набора тестов, объединяя три слоя:
Встроенные значения по умолчанию, поставляемые вместе с PHPUnit.
Конфигурация XML, загружаемая из
phpunit.xml(или файла, переданного в--configuration) и применяемая поверх значений по умолчанию.Параметры CLI, переданные в командной строке и применяемые поверх конфигурации XML.
Каждый слой переопределяет предыдущий для тех настроек, которых он касается. Настройки, не указанные в слое, наследуются от нижележащего слоя. Например, beStrictAboutCoverageMetadata по умолчанию имеет значение false; установка beStrictAboutCoverageMetadata="true" в phpunit.xml включает его для всех запусков; передача --strict-coverage включает его для одного запуска, даже если XML-файл не включает эту настройку.
В таблицах этого приложения сопоставляются параметры CLI (см. Параметры CLI) и атрибуты и элементы конфигурации XML (см. Файл конфигурации XML), участвующие в этой модели переопределения, а также их встроенные значения по умолчанию. Параметры, не участвующие в этой модели (только CLI или только XML), перечислены в конце.
Конфигурация
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| атрибут bootstrap элемента | — |
| атрибут cacheDirectory элемента | — |
| атрибут cacheResult элемента |
|
| <bootstrap> в | (добавочное) |
| <includePath> в | (добавочное) |
| <ini> в | (добавочное) |
| атрибут baseline элемента | — |
Выбор
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| атрибут defaultTestSuite элемента | — |
| <group> в | — |
| <group> в | — |
Выполнение
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| атрибут processIsolation элемента |
|
| атрибут backupGlobals элемента |
|
| атрибут backupStaticProperties элемента |
|
| атрибут beStrictAboutCoverageMetadata элемента |
|
| атрибут requireCoverageContribution элемента |
|
| атрибут beStrictAboutChangesToGlobalState элемента |
|
| атрибут beStrictAboutOutputDuringTests элемента |
|
| атрибут beStrictAboutTestsThatDoNotTestAnything элемента |
|
| атрибут enforceTimeLimit элемента |
|
| атрибут defaultTimeLimit элемента |
|
| атрибут executionOrder элемента |
|
| executionOrder |
|
| executionOrder |
|
| атрибут resolveDependencies элемента |
|
Остановка при возникновении проблем
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| атрибут stopOnDefect элемента |
|
| атрибут stopOnError элемента |
|
| атрибут stopOnFailure элемента |
|
| атрибут stopOnWarning элемента |
|
| атрибут stopOnRisky элемента |
|
| атрибут stopOnDeprecation элемента |
|
| атрибут stopOnNotice элемента |
|
| атрибут stopOnSkipped элемента |
|
| атрибут stopOnIncomplete элемента |
|
Завершение с ошибкой при возникновении проблем
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| failOnAllIssues атрибут элемента |
|
| failOnEmptyTestSuite атрибут элемента |
|
| failOnWarning атрибут элемента |
|
| failOnRisky атрибут элемента |
|
| failOnDeprecation атрибут элемента |
|
| failOnPhpunitDeprecation атрибут элемента |
|
| failOnPhpunitNotice атрибут элемента |
|
|
|
|
| failOnNotice атрибут элемента |
|
| failOnSkipped атрибут элемента |
|
| failOnIncomplete атрибут элемента |
|
Отчётность
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| colors атрибут элемента |
|
| columns атрибут элемента |
|
| diffContext атрибут элемента |
|
| stderr атрибут элемента |
|
| reverseDefectList атрибут элемента |
|
| testdox атрибут элемента |
|
| testdoxSummary атрибут элемента |
|
| displayDetailsOnAllIssues атрибут элемента |
|
| displayDetailsOnIncompleteTests атрибут элемента |
|
| displayDetailsOnSkippedTests атрибут элемента |
|
| displayDetailsOnTestsThatTriggerDeprecations атрибут элемента |
|
| displayDetailsOnPhpunitDeprecations атрибут элемента |
|
| displayDetailsOnPhpunitNotices атрибут элемента |
|
| displayDetailsOnTestsThatTriggerErrors атрибут элемента |
|
| displayDetailsOnTestsThatTriggerNotices атрибут элемента |
|
| displayDetailsOnTestsThatTriggerWarnings атрибут элемента |
|
Журналирование
Параметр CLI | Настройка XML | По умолчанию |
|---|---|---|
| <junit outputFile> внутри | — |
|
| — |
|
|
|
| <teamcity outputFile> внутри | — |
| <testdoxHtml outputFile> внутри | — |
| <testdoxText outputFile> внутри | — |
Покрытие кода
Параметр CLI | Параметр XML | По умолчанию |
|---|---|---|
| атрибут pathCoverage у |
|
| атрибут disableCodeCoverageIgnore у |
|
| <clover outputFile> в | — |
|
| — |
| <cobertura outputFile> в | — |
| <crap4j outputFile> в | — |
| <html outputDirectory> в | — |
| <php outputFile> в | — |
| <text outputFile> в | — |
| атрибут |
|
| атрибут |
|
| <xml outputDirectory> в | — |
| атрибут |
|
Параметры только для CLI
Следующие параметры CLI не имеют соответствующего параметра XML. Они управляют текущим запуском тестового исполнителя, выполняют разовые операции или подавляют части конфигурации XML.
Выбор конфигурации и разовые операции:
-c,--configuration <file>--no-configuration--no-extensions--no-coverage--no-logging--generate-configuration--migrate-configuration--generate-baseline <file>--ignore-baseline--warm-coverage-cache
Выбор и фильтрация тестов:
--all--testsuite <name>(также переопределяет атрибут XMLdefaultTestSuite; см. выше)--exclude-testsuite <name>--filter <pattern>--exclude-filter <pattern>--covers <name>--uses <name>--requires-php-extension <name>--test-suffix <suffix>
Интроспекция:
--list-suites--list-groups--list-tests--list-test-files--list-tests-xml <file>
Альтернативный вывод и потоковая передача событий:
--debug--with-telemetry--teamcity--log-events-text <file>--log-events-verbose-text <file>--no-output--no-progress--no-results
Покрытие кода:
--coverage-filter <dir>
Разное:
--random-order-seed <N>-h,--help--version--atleast-version <min>--check-version--check-php-configuration
Параметры только для XML
Следующие параметры конфигурации XML не имеют соответствующих параметров CLI и могут быть изменены только путём редактирования файла конфигурации.
У элемента <phpunit>:
controlGarbageCollector (по умолчанию:
false)numberOfTestsBeforeGarbageCollection (по умолчанию:
100)requireCoverageMetadata (по умолчанию:
false)timeoutForSmallTests (по умолчанию:
1)timeoutForMediumTests (по умолчанию:
10)timeoutForLargeTests (по умолчанию:
60)
Определение набора тестов:
Элемент <testsuites> и его дочерние элементы
Конфигурация исходного кода:
Элемент <source> и все его атрибуты и дочерние элементы
Покрытие кода:
атрибут includeUncoveredFiles у
<coverage>(по умолчанию:true)атрибут ignoreDeprecatedCodeUnits у
<coverage>(по умолчанию:false)атрибуты цвета и границ <html> (
lowUpperBound,highLowerBound,colorSuccessLow,colorSuccessMedium,colorSuccessHigh,colorSuccessBar,colorWarning,colorWarningBar,colorDanger,colorDangerBar,colorBreadcrumbs, их варианты*DarkиcustomCssFile)атрибут
thresholdу<coverage><report><crap4j>(по умолчанию:50)
Окружение PHP:
<const> в
<php><var> в
<php><env> в
<php><get> в
<php><post> в
<php><cookie> в
<php><server> в
<php><files> в
<php><request> в
<php>
Расширения:
Элементы <parameter> в
<extensions><bootstrap>
© 2005–2026 Sebastian Bergmann
Licensed under the Creative Commons Attribution 3.0 Unported License.
https://docs.phpunit.de/en/13.2/configuration.html