You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Codeception远程覆盖率include/exclude文件配置不生效如何解决?

该需求完全可以实现,配置不生效的核心原因是未开启远程覆盖率专属配置项,本地默认的include/exclude规则不会作用于远程覆盖率数据,同时原通配符规则也存在匹配范围问题,按以下步骤操作即可解决:

第一步:修正codeception.yml的coverage配置

你需要在coverage配置段新增远程覆盖率开关,同时调整通配符规则实现递归匹配+后缀过滤,修改后的配置示例:

coverage:
    enabled: true
    # 关键配置:开启远程覆盖率后,本地的include/exclude规则才会作用于远程返回的覆盖率数据
    remote: true
    # 若远程服务器的项目路径和本地路径结构不同,需补充远程根目录路径,结构一致则可省略
    # remote_path: /var/www/your_project_root
    include:
        # ** 代表递归所有子目录,仅匹配.php后缀文件,自动排除所有非PHP文件
        - api_base/api/web/**/*.php
    exclude:
        - api_base/system/config.php
        # 可批量排除不需要的目录/文件类型
        - vendor/**/*
        - tests/**/*
        - '*.md'
        - '*.json'
        - '*.lock'

注:原配置中api_base/api/web/*仅匹配该目录下的一级文件,不会递归子目录,调整为**/*.php既可以覆盖所有子目录的PHP文件,又能直接过滤非PHP后缀的文件。

第二步:验证c3.php可访问

确保放在项目根目录的c3.php可以通过http://new-project.local/c3.php正常访问,Codeception会自动通过该文件拉取远程覆盖率数据。

第三步:重新执行测试生成报告

原执行命令无需修改,直接运行即可:
codecept run acceptance --no-colors --coverage-html coverage

如果执行后仍有不符合预期的文件被纳入,可在命令后加-vvv参数查看调试日志,确认路径匹配规则是否和实际文件路径一致。

内容的提问来源于stack exchange,提问作者CJ Dennis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 02:15:03