我在Swift项目中使用Xcode 9,而且我正处于表格翻转模式。
这是我的最终目标:在操场上将我的测试放在我的逻辑旁边,这样当我编写逻辑时,我可以看到测试近乎实时地传递。
我也会接受如何将我的测试单独放在游乐场中,我只是不想在模拟器上为每一件小事进行测试。
我试图让它发挥作用的问题很多。首先,我找不到将游乐场直接添加到我的项目/工作区的方法。当我右键单击项目导航器中的一个组并选择“新文件...”时,我得到了这个:
如你所见,游乐场没有选择。过滤也不会返回任何结果。如果我按下项目导航器底部的加号按钮,则会弹出相同的对话框(没有游乐场选项)。
我认为它在另一个菜单中,所以我进入了“文件”菜单,并在“新建>”中我找到了创建游乐场的选项。我从选择器中选择一个空白的游乐场,选择保存它的位置(奇怪的是它想要将它保存在'未保存的Xcode文档'下)并在新选项卡中显示一个基本操场。但是,我注意到奇怪的是,此选项卡顶部不再有播放按钮或方案/模拟器选择器。
它现在无法识别Apple提供的任何模块!当然,创建游乐场实际上并没有将它添加到我的工作区。我想我必须手动将它添加到我的项目中。这样做,它将识别我的pod ,但没有我的项目文件!我尝试使用的任何课程都会给我Unrecognized identifier
。尝试import
我的项目也不起作用,只是给了我一个No module
。
我尝试清除DerivedData
,我尝试清理,我尝试重新启动Xcode,我甚至确保我在模拟器列表中有一个iPad Pro(因为这对某些人来说似乎很重要)。
沮丧地,我删除了游乐场,并解决了只是为了不断处理我的测试。但是现在,我的项目一直存在错误!尽管将操场搬到垃圾桶,Swift继续错误地说那个游乐场的“未解决的标识符”!
答案 0 :(得分:2)
正如Brandon Williams在FrenchKit的演讲中所说的那样优秀does not get access to anything in the application target.,一个操场" https://i.stack.imgur.com/mKp9H.png"哪个是荒谬的,但是,嘿,你要做什么。所以答案是:目前没有办法像我问的那样做。
但是,如果您的逻辑位于自己的框架/ cocoapod中,则可以实现此功能。也就是说,将您想要测试的逻辑移出应用目标并移入您的应用随后导入的外部库。这将允许您的游乐场也可以导入它,您可以测试您心中的内容。