我有一个图书馆项目(A)和一个金属图书馆项目(M)。 M在“复制文件”阶段包含在A中。这就引入了构建依赖性,这意味着我无法为模拟器构建A,因为它首先尝试构建M,并且模拟器不支持Metal。
很好,但是问题是A包含一些单元测试,并且当我尝试测试项目时,我收到此错误消息,Logic Testing Unavailable. Logic testing on iOS devices is not supported. You can only run logic tests on the Simulator.
但是由于上述依赖性,我无法为模拟器构建...
我读了https://medium.com/the-sup-app/bare-metal-working-with-metal-and-the-simulator-70e085e3a45 -也许这可以帮助我消除A在M中对模拟器的依赖性,但是我试图在没有Cocoapods的情况下(纯粹在Xcode中)做到这一点。
有什么解决方法吗?
最佳答案
周末我碰到了同样的事情。试图成为一个好公民,并在我的Metal项目中包含单元测试。 ;-)
解决这个问题的唯一方法是不使用XCTest编写单元测试,而是创建一个单独的目标,该目标可以自己作为应用程序运行。然后,这个新目标运行单元测试。
过去,我为此使用GHUnit,但现在不知道是否有合适的替代品。
最坏的情况是,您可以编写自己的运行XCTest宏的小单元测试库。
关于ios - 在项目中包含Metal库的同时如何在Xcode中进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43569473/