iOS - 运行 Swift 单元测试时找不到“MyProject-Swift.h”文件

2024-01-10

我正在尝试为我的项目设置单元测试。 它是一个现有的 Objective-C 应用程序,我最近向其中添加了一个 Swift 类。我已经设置了“MyProject-Swift.h”和 Swift 桥接文件(“MyProject”和“MyProjectTest”),并且我能够使用 Objective-C 和 Swift 代码很好地构建和运行应用程序。

但是,现在我想在新的 Swift 类上运行一些单元测试。 我设置了测试文件,如下所示:

MySwiftClassTests.swift:

import UIKit
import XCTest
import MyProject

class MySwiftClassTests: XCTestCase {

    override func setUp() {
        super.setUp()
        // Put setup code here. This method is called before the invocation of each test method in the class.
    }

    override func tearDown() {
        // Put teardown code here. This method is called after the invocation of each test method in the class.
        super.tearDown()
    }

    func testExample() {
        // This is an example of a functional test case.
        XCTAssert(true, "Pass")
    }

    func testPerformanceExample() {
        // This is an example of a performance test case.
        self.measureBlock() {
            // Put the code you want to measure the time of here.
        }
    }

}

作为测试运行应用程序时出现此错误:

'MyProject-Swift.h' file not found

我不确定为什么只有在尝试运行测试时才会发生这种情况。 有什么建议么?


“MyProject-Swift.h”文件在以下路径生成:

"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources"

我最终将其添加到我的单元测试目标的标头搜索路径中。

另外,正如 @hyouuu 指出的已知问题,希望苹果最终能提供一些好的解决方案。直到我相信我们需要使用上述解决方案。

https://developer.apple.com/library/content/documentation/Xcode/Conceptual/RN-Xcode-Archive/Chapters/xc6_release_notes.html https://developer.apple.com/library/content/documentation/Xcode/Conceptual/RN-Xcode-Archive/Chapters/xc6_release_notes.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS - 运行 Swift 单元测试时找不到“MyProject-Swift.h”文件 的相关文章

  • 暂停视频录制[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试创建一个应用程序 用户可以在其中从相机录制视频 该应用程序的功能之一必须是文件录制中的暂停 例如 用户通过按 开始 按钮开始
  • 我们可以从 LinkPresentation 框架中的 LPLinkView 中提取图像吗?

    我想在我的应用程序中呈现丰富的链接 并将这些数据发送到我的服务器 我需要访问视图内的图像LPLinkView https developer apple com documentation linkpresentation lplinkvi
  • 迭代 NSOrderedSet

    我正在尝试迭代 NSOrderedSet 的实例 像这样的事情 func myFunc var orderedSet NSOrderedSet array 42 43 44 for n in orderedSet NSLog i n 但是
  • iOS 8 中的 UISplitViewController 状态恢复

    在 iOS 8 上 UISplitViewController 似乎可以保存和恢复其子视图的状态 例如 主视图是否隐藏 这是不可取的 因为我的应用程序应该始终以横向方式显示主视图 并始终以纵向方式隐藏它 如果用户以横向模式关闭应用程序 保存
  • UICollectionView 未出现

    我正在尝试设置UICollectionView 以编程方式在我的视图控制器中扩展UIViewController 由于某种原因 我的收藏视图根本没有显示 以下是我所拥有的 为什么没有出现 我将它连接到委托和数据源并将其添加为子视图self
  • 在后台任务中安排通知

    我正在为 iOS 开发一个日历 闹钟应用程序 它与网络服务器同步 当在服务器上添加活动时 会发出推送通知 以便 iOS 客户端可以获取新数据 并根据需要更新和安排下一次警报的时间 本地通知 但这仅在应用程序在客户端打开时才有效 我希望客户端
  • 使用 Google place API 从 lat long 获取附近的地点

    我正在使用 google place API 即 https maps googleapis com maps api place search json location 33 7167 73 0667 radius 500 type f
  • 如何使用 Swift 获取 YouTube 频道的所有播放列表?

    我的问题不是关于从一般频道检索视频 我只想获取该频道创建的所有 播放列表 并检索每个播放列表的缩略图 标题和视频数量 这是一个 YouTube 频道示例 正如您所看到的 有很多已创建的播放列表 截至目前 我只能获取某个频道最新上传的视频 在
  • 线程 1:信号 SIGABRT - AppDelegate.h

    main m Journey Created by Julian Buscema on 2014 07 13 Copyright c 2014 Julian Buscema All rights reserved import
  • PrepareForSegue之谜

    我在两个不同的 VC 中有一个prepareForSegue 方法 一个使用一个if声明 而另一个旨在使用switch 除了名称之外 代码几乎相同 这个效果很好 void prepareForSegue UIStoryboardSegue
  • 检查 touchend 是否在拖动后出现

    我有一些代码可以更改表的类 在手机上 有时表格对于屏幕来说太宽 用户将拖动 滚动来查看内容 但是 当他们触摸并拖动表格时 每次拖动都会触发 touchend 如何测试触摸端是否是触摸拖动的结果 我尝试跟踪dragstart和dragend
  • iOS WKWebView.scrollView委托导致BAD_ACCESS

    我的 viewController 有一个 UIView 属性 其中包含一个 WKWebView 我将 WKWebView rollView 委托设置为我的 viewController 它是我的 UIView 子类的公共函数 并在我的 v
  • 在 Instruments 中查找内存泄漏行

    我是 iOS 中的仪器新手 我正在尝试使用 Xcode 4 5 2 并按照本教程查找仪器中的内存泄漏 http soulwithmobiletechnology blogspot sg 2011 04 how to check memory
  • 任务并行库周围是否有一个接口包装器,以便我可以将其交换用于单元测试?

    I asked 这个问题 https stackoverflow com questions 3362734 unit testing concurrent software what do you do不久以前 我现在知道这是一个坏主意
  • 对使用phonegap和钛的质疑[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 最近我听说了 PhoneGap 和 Titanium 移动网络应用程序的开发 我分析了这两个 Web 应用程序 并了解了如何使用它们以
  • 按范围迭代数组

    我有一个数组 1 2 3 4 5 6 100 我希望将此数组迭代 5 次 具体来说 取数组的前 5 个数字并获取平均值 继续处理接下来的 5 个数字并获取平均值 依此类推 我尝试过多种方法 例如Dequeue和 for 循环但未能获得所需的
  • xcode 6.1 (Swift) 中的 SIGABRT 运行时错误

    与最初的代码相比 唯一的更改是在ViewControl swift override func viewDidLoad newMessage hidden true super viewDidLoad Do any additional s
  • 应用程序未通过协同设计验证?

    我在提交 iPhone 申请时遇到问题 我看到了一些类似的问题 但没有找到答案 当我存档项目并单击 验证 时 收到错误消息 应用程序未通过协同设计验证 签名无效 或者未使用 Apple 提交证书进行签名 我假设我在协同设计部分做错了什么 我
  • 在 UIMenuItem 上设置accessibilityLabel

    我正在尝试设置accessibilityLabel of a UIMenuItem而且似乎没有效果 无论如何 VoiceOver 只是读取项目的标题 let foo UIMenuItem title foo action selector
  • ActionScript、NetStream.Play.Failed iOS AIR 移动设备

    我正在尝试以类似于 Tiberiu Ionu Stan http stackoverflow com questions 2036107 aac mp4 not working in actionscript 3s netstream 的方

随机推荐

  • Laravel - Livewire,如何自定义全局消息URL?

    使用如下例所示的自定义域并不告诉 Livewire 请求以相同的子域为前缀subdomain1在这个例子中 Route domain subdomain1 env APP DOMAIN localhost gt middleware web
  • 在类型化数组中存储符合泛型协议的对象

    我有一个协议 protocol Adjustable Equatable associatedtype T var id String get set var value T get set init id String value T 以
  • 使用mapstruct中的构建器(使用不可变注释处理器)将对象映射到不可变对象

    我们正在使用不可变框架 http immutables github io 生成所有 DTO 现在我们想将这些对象映射到另一个映射结构 http mapstruct org 但生成的 DTO 是不可变的 没有 setter 和构造函数 这与
  • GCC 4.8.1 无法识别的命令行选项“-std=c++11”

    在网上看了很多文献 看来最近的GCC版本肯定支持 std c 11命令行选项 但由于一些疯狂的原因 即使使用 GCC 4 8 1 我也会得到 无法识别的命令行选项 这没有任何意义 C newmingw mingw32 bin gt g v
  • 如何使用 C# 在 firebird 中执行事务(或多个 sql 查询)

    我尝试了多种方法 包括SO 以下 MYSQL 代码在 Firebird 中不起作用 CREATE TABLE publications INT NOT NULL AUTO INCREMENT PRIMARY KEY id filename
  • powershell删除特定注册表项

    我是 PowerShell 新手 我正在尝试从运行注册表项中删除特定值 我正在使用remove item命令 但是 我没有看到用于指定单个值的开关 我不想删除整个键 只想删除一个值 作为参考 我正在尝试执行的批处理等效项 reg delet
  • 可插入注释处理器 API 可以检索源代码注释吗?

    我正在使用 Java6 的可插入注释处理 api 自动创建一些部署 XML 文件 这些 XML 文件的一部分包含对象的描述 描述始终与与类本身关联的 Javadoc 内容相同 我可以强制注释成为 Block 注释的字段 但这会重复信息 在注
  • 如何在基于时间的模拟游戏中防止基于时间的作弊?

    在iPhone游戏 Tiny Tower 中 我猜测它使用了某种基于上次玩游戏和当前时间之间花费的时间的模拟 因为你可以将当前时间向前设置 你将从假中受益经过的时间跨度 有没有一种算法可以用来防止这种事情发生 或者至少让普通用户很难实现 编
  • 如何在 Scala 中使用命名参数创建自定义函数类型?

    假设我想创建一个名为 ImportFunc 的自定义函数类型 它接受一个名为 fileImportID 的 Int 和一个名为 filename 的字符串 我可以使用类型别名很容易地做到这一点 如下所示 type ImportFunc In
  • 错误“元素不能包含空格。内容模型为空。”是什么意思?意思是?

    我正在为一个简单的 xml 组合一个 xml 模式 请参阅下面的 xml 和模式 但我不断收到有关节节点的以下错误 元素不能包含空格 内容模型为空 浏览网络我找不到任何简洁的解释来解释它的含义 所以我可以修复它 有人可以帮忙吗 编辑 感谢大
  • np.where(条件为 None) 不等于 np.where(条件 == None)

    我对 np where 函数感到困扰 在我的示例中为第 7 行 背景 我正在编写 连四子 游戏 这insert chip 方法访问变量self board这是我个人数据类型的 8x8 np 数组Chip 如果没有chip在一个条目中self
  • Angular 2 HTTP GET 返回 URL null

    我正在尝试使用 Angular 2 和 Typescript 发出一个简单的 HTTP GET 请求 我收到 404 错误 网址为空 下面显示的是我的组件文件以及我收到的错误 import Component OnInit from ang
  • 如何访问成员变量sqlite回调

    我需要从 sqlite 回调函数访问类中的变量 它不能是静态的 因为我需要从其他函数访问这个变量 这是我当前的代码 class fromdb private string paramdb char errmsg string param s
  • Chrome 正在由自动化测试软件控制

    我正在 Chrome 中使用 Serenity BDD Selenium 运行自动化测试 我必须下载新的 ChromeDriver 因为我的测试无法运行 gt 测试将打开 ChromeDriver 但无法 以用户身份浏览 当我用谷歌搜索这个
  • 为什么声明转换不会减少 cookie 大小?

    我正在使用 Azure AD net core 2 1 并已注册我的应用程序并将其配置为返回 AD 组作为声明 我还使用声明转换来删除除我的应用程序使用的三个组之外的所有组声明 这成功地消除了 100 多个组 我这样做是希望能够减少后续请求
  • SQL Server 2008 - 连接字符串

    我需要获取每个行项目的查询结果 并构建一个以分号分隔的组成该项目的材料列表 架构构成 表格 LineItems 唯一项目列表 LineItems Materials 多对多 材料 独特材料清单 行项目 ID 行项目 1 1A 1 LineI
  • 覆盖 ComboBox 中的默认 TextBlock 样式

    我在 App xaml 中定义了默认的 TextBlock 样式 它似乎也会影响 ComboBox 项目的文本颜色 现在 如何显式设置主窗口中定义的 ComboBox 的文本颜色 我想保留默认样式 但将组合框文本颜色设置为蓝色而不是红色 A
  • Unity3d android 2d 精灵放置

    Please take a look at this picture It s a final look of the game exported from photoshop I marked the ui sprites with re
  • 将鼠标悬停在 jtable 单元格上时显示图像

    我有一个使用 DefaultTableModel 创建的 JTable 我想在鼠标悬停在该 JTable 的特定单元格上时显示图像 并且我需要每个单元格的图像都不同 提前致谢 您可以覆盖prepareRenderer of the JTab
  • iOS - 运行 Swift 单元测试时找不到“MyProject-Swift.h”文件

    我正在尝试为我的项目设置单元测试 它是一个现有的 Objective C 应用程序 我最近向其中添加了一个 Swift 类 我已经设置了 MyProject Swift h 和 Swift 桥接文件 MyProject 和 MyProjec