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

如何在Codemagic上运行原生iOS应用测试?YAML配置报错求助

iOS Codemagic CI/CD YAML配置错误修复方案

1. 修复YAML层级缩进问题

你的配置存在核心结构错误:instance_type、environment、scripts必须作为develop工作流的子节点,但当前配置里它们与develop同级,导致Codemagic无法识别工作流配置。

修正后的完整YAML:

workflows:
  develop:
    instance_type: mac_mini_m1
    environment:
      xcode: 14.2
      vars:
        #BUNDLE_ID: "io.codemagic.sample.iosnative"
        XCODE_PROJECT: "Portfolio.xcodeproj"
        XCODE_SCHEME: "PortfolioTests"

    scripts:
      - name: say hello
        script: echo "Hello Codemagician!"
        
      - name: Run iOS tests
        script: |
          set -e # 遇到错误立即退出

          xcode-project run-tests \
              --project ${XCODE_PROJECT?} \
              --scheme ${XCODE_SCHEME?} \
              --device "iPhone 12"
        test_report: build/ios/test/*.xml

2. 修正测试命令参数不匹配问题

原配置中用--workspace参数指向.xcodeproj文件,这是错误的:

  • --workspace用于指定.xcworkspace工作区文件
  • 若你的项目用的是.xcodeproj项目文件,需改用--project参数,同时建议把变量名改为XCODE_PROJECT更准确

3. 额外验证项

  • 确保PortfolioTests Scheme已开启共享:在Xcode中打开项目 → 点击顶部菜单栏Product→Scheme→Manage Schemes,勾选PortfolioTests的Shared选项,提交修改到代码仓库。
  • 确认设备兼容性:Xcode 14.2默认支持iPhone 12模拟器,若仍报错,可尝试替换为iPhone 13等Xcode 14.2自带的设备名称。
  • 启用测试报告:取消test_report的注释,确保路径与Codemagic生成的测试报告路径一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 12:25:13