CLI API 参考

在 Pest 文档的前几章中,我们介绍了许多 Pest 中可用的 CLI 选项。尽管如此,Pest 还提供了许多其他可能证明有益的选项。为了方便起见,下面提供了完整的 CLI API 参考。

配置

  • --init: 初始化标准的 Pest 配置。
  • -c|--configuration <file>: 从 XML 文件读取配置。
  • --no-configuration: 忽略默认配置文件 (phpunit.xml)。
  • --no-extensions: 不加载 PHPUnit 扩展。
  • --include-path <path(s)>: 使用给定的路径将 PHP 的 include_path 放在前面。
  • -d <key[=value]>: 设置 php.ini 值。
  • --cache-directory <dir>: 指定缓存目录。
  • --generate-configuration: 使用建议的设置生成配置文件。
  • --migrate-configuration: 将配置文件迁移到当前格式。
  • --test-directory: 指定包含 Pest.php、TestCase.php、助手和测试的测试目录。默认值:tests

选择

  • --bail: 在第一个未通过的测试时停止执行。
  • --todos: 将待办事项列表输出到标准输出。
  • --retry: 首先运行未通过的测试,并在第一个错误或失败时停止执行。
  • --exclude-testsuite <name>: 从指定的测试套件中排除测试。
  • --list-groups: 列出可用的测试组。
  • --group <name>: 仅运行指定组中的测试。
  • --exclude-group <name>: 从指定的组中排除测试。
  • --covers <name>: 仅运行旨在覆盖 <name> 的测试。
  • --uses <name>: 仅运行旨在使用 <name> 的测试。
  • --list-tests: 列出可用的测试。
  • --list-tests-xml <file>: 以 XML 格式列出可用的测试。
  • --filter <pattern>: 过滤要运行的测试
  • --test-suffix <suffixes>: 仅在具有指定后缀的文件中搜索测试。默认值:Test.php,.phpt

执行

  • --globals-backup: 为每个测试备份和恢复 $GLOBALS。
  • --static-backup: 为每个测试备份和恢复静态属性。
  • --strict-coverage: 对代码覆盖率元数据严格。
  • --strict-global-state: 对全局状态的更改严格。
  • --disallow-test-output: 对测试期间的输出严格。
  • --enforce-time-limit: 根据测试大小强制执行时间限制。
  • --default-time-limit <sec>: 未声明大小的测试的超时时间(秒)。
  • --dont-report-useless-tests: 不报告不测试任何内容的测试。
  • --stop-on-defect: 在第一个未通过的测试时停止执行。
  • --stop-on-error: 在第一个错误时停止执行。
  • --stop-on-failure: 在第一个错误或失败时停止执行。
  • --stop-on-warning: 在第一个警告时停止执行。
  • --stop-on-risky: 在第一个有风险的测试时停止执行。
  • --stop-on-skipped: 在第一个跳过的测试时停止执行。
  • --stop-on-incomplete: 在第一个不完整的测试时停止执行。
  • --fail-on-incomplete: 将不完整的测试视为失败。
  • --fail-on-risky: 将有风险的测试视为失败。
  • --fail-on-skipped: 将跳过的测试视为失败。
  • --fail-on-warning: 将带有警告的测试视为失败。
  • --cache-result: 将测试结果写入缓存文件。
  • --do-not-cache-result: 不将测试结果写入缓存文件
  • --order-by <order>: 按顺序运行测试:default|defects|depends|duration|no-depends|random|reverse|size。
  • --random-order-seed <N>: 在随机顺序运行测试时使用指定的随机种子

报告

  • --colors <flag>: 在输出中使用颜色(“never”,“auto”或“always”)。
  • --columns <n>: 用于进度输出的列数。
  • --columns max: 使用最大列数用于进度输出。
  • --stderr: 写入 STDERR 而不是 STDOUT。
  • --no-progress: 禁用测试执行进度输出。
  • --no-results: 禁用测试结果输出。
  • --no-output: 禁用所有输出。
  • --display-incomplete: 显示不完整测试的详细信息。
  • --display-skipped: 显示跳过测试的详细信息。
  • --display-deprecations: 显示测试触发的弃用详细信息。
  • --display-errors: 显示测试触发的错误详细信息。
  • --display-notices: 显示测试触发的通知详细信息。
  • --display-warnings: 显示测试触发的警告详细信息。
  • --reverse-list: 以相反的顺序打印缺陷。
  • --teamcity: 将默认进度和结果输出替换为 TeamCity 格式。
  • --testdox: 将默认结果输出替换为 TestDox 格式
  • --compact: 将默认结果输出替换为 Compact 格式

日志记录

  • --log-junit <file>: 将 JUnit XML 格式的测试结果写入文件。
  • --log-teamcity <file>: 将 TeamCity 格式的测试结果写入文件。
  • --testdox-html <file>: 将 TestDox 格式(HTML)的测试结果写入文件。
  • --testdox-text <file>: 将 TestDox 格式(纯文本)的测试结果写入文件。
  • --log-events-text <file>: 将事件作为纯文本流式传输到文件。
  • --log-events-verbose-text <file>: 将事件作为纯文本(包含遥测信息)流式传输到文件。
  • --no-logging: 忽略 XML 配置文件中配置的日志记录

代码覆盖率

  • --coverage: 生成代码覆盖率报告并输出到标准输出。
  • --coverage --min=<value>: 设置所需的最小覆盖率百分比,如果不满足则失败。
  • --coverage-crap4j <file>: 将 Crap4J XML 格式的代码覆盖率报告写入文件。
  • --coverage-html <dir>: 将 HTML 格式的代码覆盖率报告写入目录。
  • --coverage-php <file>: 将序列化代码覆盖率数据写入文件。
  • --coverage-text=<file>: 将文本格式的代码覆盖率报告写入文件 [默认值:标准输出]。
  • --coverage-xml <dir>: 将 XML 格式的代码覆盖率报告写入目录。
  • --warm-coverage-cache: 预热静态分析缓存。
  • --coverage-filter <dir>: 在代码覆盖率报告中包含 <dir>
  • --path-coverage: 除了行覆盖率外,还报告路径覆盖率。
  • --disable-coverage-ignore: 禁用用于忽略代码覆盖率的元数据。
  • --no-coverage: 忽略 XML 配置文件中配置的代码覆盖率报告

分析

  • --profile: 将前十个最慢的测试输出到标准输出

在本节中,您找到了 Pest 提供的 CLI 选项的完整列表。在后续文档中,我们将探讨测试依赖项的主题:测试依赖项