无法将App Delegate转换为测试中的App Delegate

use*_*164 5 unit-testing ios swift

我在Swift中进行单元测试,遇到了问题.每次运行测试时,都会收到错误消息:

Could not cast value of type 'app.AppDelegate' to 'app_Tests.AppDelegate' 
Run Code Online (Sandbox Code Playgroud)

我确保从测试包中取消选中AppDelegate,并且视图控制器无法再访问应用程序委托.有没有人有这个问题的解决方案.提前致谢!

Ale*_*min 5

我认为您view controllers已经检查target membership了您的测试包。在这种情况下,您view controllers使用您的测试模块和 App Delegate 您的真实模块。

目标会员

如果您在@testable import <module name>顶部的测试文件中有您的应用程序名称,例如app. 那么你应该有能力去view controllers检查target membership你的测试。

这东西随 2015 年 9 月发布的 Swift 2.0 一起提供。