Xcode 14中SPM测试函数旁的菱形图标频繁消失问题
Xcode 14 + SPM模块化项目中测试函数运行图标频繁消失问题
在使用Swift Package Manager(SPM)对旧Xcode项目进行模块化改造时,出现测试函数旁的运行菱形图标频繁消失的现象,重启Xcode后图标会恢复显示。相同模块化方案在Xcode 13下运行正常,已排除Scheme配置错误的可能。
以下是针对性的排查和解决方法:
彻底清理Xcode缓存
执行命令清理全局缓存和项目衍生数据,再重启Xcode:rm -rf ~/Library/Caches/com.apple.dt.Xcode rm -rf ~/Library/Developer/Xcode/DerivedData也可通过Xcode菜单
Product > Clean Build Folder(快捷键Cmd+Shift+K)清理当前项目的构建缓存。验证SPM测试目标配置
检查Package.swift中测试目标的配置是否规范,确保测试类继承自XCTestCase,测试函数以test开头:targets: [ // 主目标 .target(name: "MyPackage"), // 测试目标 .testTarget( name: "MyPackageTests", dependencies: ["MyPackage"]), ]重置Scheme配置
删除现有Scheme后重新生成,避免配置异常:- 点击Xcode顶部Scheme选择框,选择
Manage Schemes... - 选中对应测试Scheme,点击
-删除 - 点击
+重新添加测试目标的Scheme,勾选Shared选项
- 点击Xcode顶部Scheme选择框,选择
升级Xcode到最新稳定版
Xcode 14早期版本存在部分SPM相关的UI和构建系统bug,升级到14.x系列的最新版本大概率能修复这类问题。排查旧项目兼容性问题
旧项目可能存在无效文件引用或遗留配置:- 移除当前SPM依赖后重新添加
- 对比Xcode 13下正常项目的
Package.resolved文件,确保依赖版本一致
内容的提问来源于stack exchange,提问作者Reimond Hill
相关产品推荐
相关产品推荐

